webdriber.Chrome().get()之selenium.common.exceptions.InvalidArgumentException:Message:invalid argument


問題:從食品伙伴網上爬取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這么個東西搞我

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM