私は最初のスクリプトをビルドしようとしているpythonには新しいです。私は、URLのリストをスクラップし、csvファイルでエクスポートしたい。私のリストの一部だけがcsvファイルに書き込むのはなぜですか?
私のスクリプトはうまく実行されますが、csvファイルを開くときにわずか数行のデータしか書き込まれません。 (sharelist
とsharelist1
)を書き込もうとしているリストを印刷しているとき、印刷は完了ですが、csvファイルは完了していません。私はここで共有しなければならない私のコードのどの部分
for url in urllist[10:1000]:
# query the website and return the html to the variable 'page'
try:
page = urllib2.urlopen(url)
except urllib2.HTTPError as e:
if e.getcode() == 404: # eheck the return code
continue
soup = BeautifulSoup(page, 'html.parser')
# Take out the <div> of name and get its value
name_box = soup.find(attrs={'class': 'nb-shares'})
if name_box is None:
continue
share = name_box.text.strip() # strip() is used to remove starting and trailing
# save the data in tuple
sharelist.append(url)
sharelist1.append(share)
# open a file for writing.
csv_out = open('mycsv.csv', 'wb')
# create the csv writer object.
mywriter = csv.writer(csv_out)
# writerow - one row of data at a time.
for row in zip(sharelist, sharelist1):
mywriter.writerow(row)
# always make sure that you close the file.
# otherwise you might find that it is empty.
csv_out.close()
わからない:ここで
は、私のコードの一部です。十分でない場合は教えてください!
オープンと 'for'ループのすべての反復であなたのファイルを閉じて、私はしかし、私は解決策を見つけるしなかったことについて考えた問題 –