[英]Downloading all available CSV & KML files from the specific website
我正在嘗試使用 python 來自動化從 data.gov.sg 下載所有可用 CSV 和 KML 文件的過程。 但是,我們收到了“HTTP 錯誤 403:禁止”錯誤消息。 我們曾經遇到過robots.txt 錯誤,該錯誤已解決。 我們下面的編碼有什么問題嗎?
import mechanize
from time import sleep
br = mechanize.Browser()
br.open('https://data.gov.sg/')
f=open("source.html","w")
f.write(br.response().read())
f.close()
filetypes=[".csv",".kml"]
myfiles=[]
for l in br.links():
for t in filetypes:
if t in str(l):
myfiles.append(l)
def downloadlink(l):
f=open(l.text,"w")
br.click_link(l)
f.write(br.response().read())
f.close()
print l.text," has been downloaded"
#br.back()
for l in myfiles:
sleep(1)
downloadlink(l)
HTTP 403 錯誤http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4表示您已被禁止訪問,要么您需要授權訪問此權限,要么服務器管理員已阻止您訪問它並發送 403 響應作為通知。
因此,我可以看到您的代碼沒有任何問題(盡管您似乎丟失了縮進),這會導致此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.