問題:從食品伙伴網上爬取txt,先爬取了<a>標簽下的鏈接url,保存在txt中,然后遍歷txt中的url,通過selenium.webdriver.Chrome().get(url)得到url頁面的內容(就是get(url)出錯了),然后取所需要的。錯誤如下:
百度解決啊,找到了一個類似問題的博客還解決不了我的問題,只能自己搗鼓。
遍歷url,get(url)關鍵代碼如下:
urls = open("finalUrls.txt", 'r', encoding="utf8")
driver = webdriver.Chrome("E:\\chromedriver_win32\\chromedriver.exe")
for url in urls:
driver.get(url)
這始終發現不了錯誤,找到個解決方法,就是取出來的url放在一個list中,然后遍歷這個列表取get,結果還是不行。代碼如下:
urls = open("finalUrls.txt", 'r', encoding="utf8")
urls = urls.read().split() # 加了此行,就是放在了list中 driver = webdriver.Chrome("E:\\chromedriver_win32\\chromedriver.exe") for url in urls: driver.get(url)
接着調,自己搗鼓,是不是把url轉成str就行了,好像本就是str,試試吧,不怕啥。結果不行。
接着試:在for循環里加入了split,即url = url.split()
錯誤依舊,但是發現一個好玩意,如下:
然后就想啊,是不是因為這么個東西搞得我get不了啊。百度去, https://www.cnblogs.com/chongzi1990/p/8694883.html
說是編碼的問題,我一開始保存的時候是utf8啊,就按照人家的試試唄,utf-8-sig,然后問題解決。。。
urls = open("finalUrls.txt", 'r', encoding="utf-8-sig")
driver = webdriver.Chrome("E:\\chromedriver_win32\\chromedriver.exe")
for url in urls:
driver.get(url)
總結:就是\ufeff這么個東西搞我