亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

怎么在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

民和| 大兴区| 永春县| 新河县| 蓝田县| 招远市| 阿荣旗| 萨嘎县| 依安县| 苍溪县| 黄骅市| 吴旗县| 兴宁市| 宁河县| 乐安县| 盐山县| 宜丰县| 安仁县| 东乡族自治县| 河曲县| 琼中| 昌江| 博乐市| 勃利县| 抚远县| 句容市| 萝北县| 霸州市| 乐东| 河池市| 临武县| 黑山县| 丹阳市| 克拉玛依市| 芷江| 安顺市| 津市市| 苏州市| 仁怀市| 宁都县| 银川市|