我想從部分URL(每行一個)的現有.txt文件中取出每行,從每行的末尾剝離%0A,爲每個URL添加前綴要完成它,然後將每個完整URL的HTML文件下載到我的硬盤中,以便稍後/在下一步使用BeautifulSoup進行拼寫。索引增加到大於50時出現索引錯誤
下面的代碼工作得很好,除了兩個問題:
1)每個下載的HTML文件具有正確使用離線(查看源文件上的文件),但在Firefox打開時不會在所有的HTML數據不含有除頁眉/橫幅任何可見數據,和
2)腳本引發「oidstripped [J] = STR(offenderid [j]的)IndexError:列表分配索引超出範圍」 在J = 51每個它運行的時間。它正確地下載j = 1到50的文件,但然後崩潰並且不會繼續。
#snip#
j = 0
with open('offenderurls.txt') as r:
offenderid = r.readlines()
while j < len(offenderid):
oidstripped = []
for l in offenderid[j]:
oidstripped.append(l)
oidstripped[j] = str(offenderid[j])
oidstripped[j] = oidstripped[j][:-1]
res = requests.get('http://www.icrimewatch.net/' + str(oidstripped[j]), stream=True)
type(res)
res.raise_for_status()
with open('Offenderpage' + str(j) + '.html', 'wb') as playFile:
for chunk in res.iter_content(1024):
playFile.write(chunk)
playFile.close()
j = j + 1
請幫忙!我對python非常陌生。不需要溫和。厚臉皮。所有建議將被考慮和讚賞。
例offenderurls.txt有55項是在這裏:https://pastebin.ca/3886683
謝謝!
您可以嘗試使用一個循環是這樣的:'F =開放( 'somefile.txt', 'R') 在f.readlines()行: ... //做一些與各行 ... f.close()' – VTodorov