91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在python中使用selenium實現一個網絡爬蟲

發布時間:2021-03-11 15:01:09 來源:億速云 閱讀:194 作者:Leah 欄目:開發技術

本篇文章為大家展示了怎么在python中使用selenium實現一個網絡爬蟲,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Python主要用來做什么

Python主要應用于:1、Web開發;2、數據科學研究;3、網絡爬蟲;4、嵌入式應用開發;5、游戲開發;6、桌面應用開發。

1.selenium初始化

方法一:會打開網頁

# 該方法會打開goole網頁
from selenium import webdriver
url = '網址'
driver = webdriver.Chrome()
driver.get(url)
driver.maximize_window() # 實現窗口最大化

方法二:不會打開網頁

# 該方法會隱式打開goole網頁
from selenium import webdriver
url = '網址'
driver = webdriver.ChromeOptions()
driver.add_argument("headless")
driver = webdriver.Chrome(options=driver)
driver.get(url)

driver = webdriver.Chrome()出錯是因為沒有chromedriver.exe這個文件

2.元素定位

在selenium中,可以有多種方法對元素進行定位,個人通常喜歡用Xpath和selector來定位元素,這樣就不用一個一個的去找節點,直接在網頁上定位到元素復制就行。

driver.find_element_by_id() # 通過元素ID定位
driver.find_element_by_name() # 通過元素Name定位
driver.find_element_by_class_name() # 通過類名定位
driver.find_element_by_tag_name() # 通過元素TagName定位
driver.find_element_by_link_text() # 通過文本內容定位
driver.find_element_by_partial_link_text()
driver.find_element_by_xpath() # 通過Xpath語法定位
driver.find_element_by_css_selector() # 通過選擇器定位

注:若尋找多個元素,要記得用復數來選擇(element改為elements)

# 例如
[i.text for i in driver.find_elements_by_xpath()]

怎么在python中使用selenium實現一個網絡爬蟲

3.建立點擊事件

因為有些網站的需求,需建立點擊事件,
如下圖的這種時間選擇,需要設置點擊和輸入內容,設置的方法也很簡單。

怎么在python中使用selenium實現一個網絡爬蟲

driver.find_element_by_css_selector('').click() # 點擊
driver.find_element_by_css_selector('').send_keys('2021-3-9') # 輸入內容

4.切換窗口

有些網站點擊之后會產生新窗口,這時就需要進行窗口的切換才能進行元素定位

win = driver.window_handles # 獲取當前瀏覽器的所有窗口
driver.switch_to.window(win[-1]) # 切換到最后打開的窗口
driver.close() # 關閉當前窗口
driver.switch_to.window(win[0]) # 切換到最初的窗口

5.iframe問題

有些網站會采用iframe來編寫頁面,這時就需要進入到iframe才可以獲取元素,一般有多少個iframe就需要進入多少個iframe。

怎么在python中使用selenium實現一個網絡爬蟲

# 有兩個iframe,需逐步進入
iframe1 = driver.find_element_by_xpath('')
driver.switch_to.frame(iframe1)
iframe2 = driver.find_element_by_xpath('')
driver.switch_to.frame(iframe2)

上述內容就是怎么在python中使用selenium實現一個網絡爬蟲,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建阳市| 内乡县| 江源县| 长沙县| 河南省| 临桂县| 天台县| 改则县| 醴陵市| 银川市| 贵溪市| 石家庄市| 剑阁县| 南陵县| 甘德县| 周口市| 洱源县| 临潭县| 东明县| 璧山县| 遵义县| 越西县| 鹤庆县| 巫山县| 新丰县| 婺源县| 社旗县| 平遥县| 鹤山市| 临清市| 五大连池市| 双桥区| 上犹县| 永济市| 永川市| 台安县| 视频| 湖南省| 彭阳县| 五华县| 保德县|