記錄使用css和xpath查詢元素的基本方法。
不同庫中內建的css和xpath使用有所不同。
1.1 bs4
soup.select(
《查詢條件》
)soup.select(
".***"
)#class為***的標籤
soup.select(
"#***"
)#id為***的標籤
1.2 lxml
《標籤》
.xpath(
"《路徑》[《查詢條件》]/《查詢內容》"
)from lxml import etree
root=etree.html(r.text)
a=root.xpath(
"//a[contains(@***,'yyy')]"
)#查詢標籤
a.xpath(
"/b/@***"
)#查詢***屬性
或root.xpath(
"//a[contains(@***,'yyy')]/b/@***"
)
2 . scrapy
response.css(
"《查詢條件》::《查詢內容》"
).extract(
)response.css(
".***::text"
).extract(
)#class為***的文字
response.css(
"#***::attr(yyy)"
).extract(
)#id為***的yyy屬性
response.xpath(
"《路徑》[《查詢條件》]/《查詢內容》"
)response.xpath(
"//a[contains(@***,'yyy')]"
)#***屬性為yyy的a元素
response.xpath(
"//a[text()='***']"
)#文字為***的a元素
response.xpath(
"//span/a"
).re(r'***'
,str
(response.body)
)#與re配合使用
3 . selenium
element=driver.find_element_by_css_selector(
"《查詢條件》"
)element=driver.find_element_by_xpath(
"《路徑》[《查詢條件》]"
)element.text #文字
element.get_attribute(
"***"
)#屬性
css和xpath查詢靈活,支援模糊搜尋,不同庫內置的css使用有所不同,xpath的使用大體相同,在查詢requests庫爬取結果時,可以將css與beautifulsoup或者xpath與lxml結合使用,從而減少對標籤的迭代操作。 爬蟲 Python爬蟲學習筆記之Urllib庫
1.urllib.request開啟和讀取url 2.urllib.error包含urllib.request各種錯誤的模組 3.urllib.parse解析url 4.urllib.robotparse解析 robots.txt檔案 傳送get請求 引入urlopen庫 用於開啟網頁 from u...
python 爬蟲之requests筆記
準備工作 安裝好pycharm,requests庫 requests 爬蟲程式 模板 import requests defgethtmttext url try r requests.get url,timeout 30 r.raise for status 如果狀態不是200,引發httperr...
Python學習筆記之爬蟲
爬蟲排程端 啟動爬蟲,停止爬蟲,監視爬蟲運 況 網頁解析器 beautiful soup 語法 例如以下 對應的 1 建立beautifulsoap物件 2 搜尋節點 find all,find 3 訪問節點資訊 文件字串,解析器,指定編碼utf 8 print 獲取所有的連線 links soup...