爬蟲5-Seleium(如何使用)
為什麼需要用Seleiun這樣的網站模擬器去叫起一個Browser呢?因為有些資料為了防止爬蟲,如果不是透過瀏覽器的方式叫起,將會無法trigger有拿資料的 function ,這是目前拿隱藏資料最快的解決辦法 裝好套件 pip install selenium 我們必須去載 chromedriver 然後放在我們專案的路徑下就可以使用了 範例: 情境是,某網站的Canvas是被Function 驅動後才產生的,所以直接發Request 返回是找不到Canvas這個節點 from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_argument("--disable-notifications") chrome = webdriver.Chrome('./chromedriver/chromedriver.exe', chrome_options=options) chrome.get(response._url) # check we had canvas to insert data canvas = chrome.find_element_by_xpath("//canvas").size != 0 print(canvas) 透過Seleium叫起瀏覽器就可以去看Canvas 是否有被產生出來 小結: 透過瀏覽器的方式,以爬蟲速度來講是很慢的一件事情,接下來會去尋求更快的方法,如果有新的方法,會在此篇文章更新的