0

私は Python のほぼ初心者ですが、難しいタスクを管理するよう求められます。私は多くのチュートリアルを読み、このウェブサイトでいくつかの非常に役立つヒントを見つけましたが、この質問は今まで、または少なくとも検索エンジンで試した方法ではなかったと思います.

csvファイルにいくつかのURLを書き込むことができました。ここで、このファイルを開き、URL を開き、そのコンテンツを辞書に書き込むことができるスクリプトを書きたいと思います。しかし、失敗しました。私のスクリプトはこれらのアドレスを出力できますが、ファイルを処理できません。

興味深いことに、私のスクリプトは毎回同じエラー メッセージを送信しませんでした。ここで最後の: req.timeout = timeout AttributeError: 'list' object has no attribute 'timeout'

したがって、私のスクリプトはいくつかの問題に直面していると思います: 1- URL を開く方法は正しいですか? 2 - 辞書を作成する方法のどこが間違っていますか?

これが私の試みです。私を助けてくれる人に前もって感謝します!

import csv
import urllib

dict = {}

test = csv.reader(open("read.csv","rb"))

for z in test:  
    sock = urllib.urlopen(z)
    source = sock.read()
    dict[z] = source
    sock.close()
print dict
4

1 に答える 1

1

まず、ビルトインをシャドウしないでください。dict新しい辞書を作成するために使用されるように、辞書の名前を別の名前に変更します。

次に、csvリーダーはすべての列を含む行ごとのリストを作成します。によって列を明示的に参照するかurllib.urlopen(z[0]) # First column in the line、法線でファイルを開き、open()それを反復処理します。

それとは別に、それは私にとってはうまくいきます。

于 2012-06-13T14:17:49.297 に答える