1.基本使用、
fromseleniumimportwebdriver2.單個節點和多個節點擊取:find_element()from
selenium.webdriver.common.byimport
byfrom
selenium.webdriver.common.keysimport
keys
from
selenium.webdriver.supportimport
expected_conditionsas
ecfrom
selenium.webdriver.support.waitimport
webdriverwait
browser = webdriver.chrome() #對
chrome
瀏覽器物件的初始化並賦值
try
:browser.get('') #
模擬訪問
input = browser.find_element_by_id('kw') #
通過id
查詢kw
節點,即:搜尋框
input.send_keys('python'
)input.send_keys(keys.enter)
#傳入要搜尋的關鍵字
wait = webdriverwait(browser,10)
wait.until(ec.presence_of_element_located((by.id,'content_left'
(browser.current_url)
(browser.get_cookies())
(browser.page_source) #輸出
url頁面的訪問源**
finally
:browser.close()
_方法只能找到第乙個,要找到所有的節點用find_elements()_
用id找元素節點
input_sencond = browser.find_element_by_css_selector('#q') #
用css
選擇器找元素節點
input_third = browser.find_element_by_xpath('//*[@id="q"') #
用xpath
找元素節點
(input_first,input_sencond,input_third)
browser.close()
以上方法等價於:
fromseleniumimportwebdriver獲取單個節點的基本方法:同理,from
selenium.webdriver.common.byimport
bybrowser = webdriver.chrome()
browser.get(''
)input_first = browser.find_element(by.id,'mq'
(input_first)
browser.close()
要找到所有的節點用find_elements()_,方法適用
3.節點互動
fromseleniumimportwebdriver4.動作鏈from
selenium.webdriver.common.byimport
byimport
time
browser = webdriver.chrome()
browser.get(''
)input_first = browser.find_element(by.id,'mq') #
獲取搜尋框
input_first.send_keys('iphone') #
填入iphone
time.sleep(1)
#間隔一秒後
input_first.clear()
#清空搜尋框
input_first.send_keys('ipad') #
再重新輸入
ipad
button = browser.find_element_by_css_selector('form') #
獲取開始搜尋按鈕
button.submit()
#開始搜尋
#實現拖拽效果fromseleniumimportwebdriverfrom
selenium.webdriver.common.byimport
byimport
time
from
selenium.webdriverimport
actionchains
browser = webdriver.chrome()
url =''
browser.get(url)
browser.switch_to.frame('iframeresult')#
獲取拖拽例項頁面
source = browser.find_element_by_css_selector('#draggable') #
選中要拖拽 的節點
target = browser.find_element_by_css_selector('#droppable') #
選中拖拽到的目標節點
actions =actionchains(browser) #宣告
actionchains
物件並賦值
actions.drag_and_drop(source,target)
#呼叫動作方法 用於目標
actions.perform()
#執行動作
python爬蟲學習筆記
一 爬蟲思路 對於一般的文章而言,思路如下 1.通過主頁url獲取主頁原始碼,從主頁原始碼中獲得 標題 鏈結 如想要抓取知乎上的新聞,就獲得主頁上的新聞鏈結 2.繼續通過 標題 鏈結獲得 標題 原始碼,進而獲得 標題 中的內容。其中,當存在多頁時,先將每一頁都一樣的url寫下來,然後迴圈加入頁碼,具...
Python爬蟲學習筆記
1.使用build opener 修改報頭 headers user agent 定義變數headers儲存user agent資訊 opener urllib.request.build opener 建立opener物件並賦給變數 openeropener.addheaders headers ...
python爬蟲學習筆記
2.網頁資訊提取 beautiful soup庫 這是 學習北理的嵩山天老師mooc教程的筆記,是老師上課用的例項。import requests url try kv 將爬蟲偽裝成瀏覽器 r requests.get url,headers kv r.raise for status print ...