看板 Python 關於我們 聯絡資訊
各位先進們好,近日小弟對Python有興趣想自學,就找到一些youtuber跟網站上學習操作 目前有遇到問題的是抓取網頁上的資料及輸入資料。 我使用的環境是 Widnwos 10 + PyCharm + Python + Selenimu 4 + Chrome 以下為小弟的程式碼,是以Dcard 為例,開啟後在搜尋欄輸入"餐廳",然後出來的文章標題 Print出來 ========================程式碼========================================= from selenium import webdriver from selenium.webdriver.chrome.service import Service as ChromeService from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install())) from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time driver.get("https://www.dcard.tw/f") search = driver.find_element(By.NAME,"query") search.send_keys("餐廳") search.send_keys(Keys.RETURN) titles = driver.find_elements(By.CLASS_NAME,"sc-b57812c2-3") for title in titles: print(title.text) time.sleep(5) driver.quit() =========================================================================== 然後有問題的是有的時候執行可以完成,但是結果一直print不出東西,都是空白的。 然後有時就直接出錯,如下顯示: Traceback (most recent call last): File "C:\Users\Michael\Desktop\MyPyCharm\test.py", line 97, in <module> driver.get("https://www.dcard.tw/f") File "C:\Users\Michael\Desktop\MyPyCharm\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 447, in get self.execute(Command.GET, {'url': url}) File "C:\Users\Michael\Desktop\MyPyCharm\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 435, in execute self.error_handler.check_response(response) File "C:\Users\Michael\Desktop\MyPyCharm\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: unknown error: cannot determine loading status from unknown error: unexpected command response (Session info: chrome=103.0.5060.53) =========================================================================== 在猜想應該不會是chrome webdriver的問題,感覺比較像是網頁loading不完全,但又不 確定,所以想來請教一下高手們是否能為我解答是什麼問題呢? 以及有什麼解決辦法嗎? 感謝各位高手們 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.167.40.60 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1656468967.A.FFC.html
aocaoef: 會不會是網頁還在加載你就開始抓資料了(? 06/30 01:20
yuna0327: 這篇好像蠻詳細的 06/30 02:07
yuna0327: 可以先試試看隱性等待看是不是ajax問題 06/30 02:09
lin7345: 這是chrome版本103或104的BUG 你試試看降成102版本試試 07/07 01:43