python contains类似函数_五步教会你用python爬虫神器PyQuery!(内含详细步骤和代码)...
前言:
今天為大家帶來的內容,是五步教會你用python爬蟲神器PyQuery!(內含詳細步驟和代碼),在這里還是要啰嗦下,為了有更好的觀賞性,大部分代碼用圖片的方式呈現出來!喜歡的話不忘點贊關注不迷路哦!
PyQuery庫官方文檔
- 初始化為PyQuery對象
- 常用的CCS選擇器
- 偽類選擇器
- 查找標簽
- 獲取標簽信息
初始化為PyQuery對象
相當于BeautifulSoup庫的初識化方法,將html轉化為BeautifulSoup對象。
bsObj = BeautifulSoup(html, 'html.parser')PyQuery庫也要有自己的初始化。
1 將字符串初始化
from pyquery import PyQuery as pq#初始化為PyQuery對象doc = pq(html)print(type(doc))print(doc)返回
2 將html文件初始化
#filename參數為html文件路徑test_html = pq(filename = 'test.html')print(type(test_html))print(test_html)返回
3 對網址響應進行初始化
response = pq(url = 'https://www.baidu.com')print(type(response))print(response)返回
提示:接下來就是自行發揮了,具體操作很簡單就不做多介紹了!
然后,接著往下看!
二、常用的CCS選擇器
打印id為container的標簽
print(doc('#container'))print(type(doc('#container')))返回
打印class為object-1的標簽
print(doc('.object-1'))返回
打印標簽名為body的標簽
print(doc('body'))返回
多種css選擇器使用
print(doc('html #container'))返回
三、偽類選擇器
偽類nth
返回
大法Python好玩contains
#找到含有Python的li標簽print(pseudo_doc("li:contains('Python')"))#找到含有好的li標簽print(pseudo_doc("li:contains('好')"))返回
Python好好好玩小編想說一句話:我是一名python開發工程師,整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習,面試寶典,面試寶典,面試寶典。想要這些資料的可以關注小編,并在后臺私信小編:“07”即可領取四、查找標簽
按照條件在Pyquery對象中查找符合條件的標簽,類似于BeautifulSoup中的find方法。
打印id=container的標簽
print(doc.find('#container'))返回
返回
2 子輩標簽-children方法
#id=container的標簽的子輩標簽container = doc.find('#container')print(container.children())返回
3 父輩標簽-parent方法
object_2 = doc.find('.object-2')print(object_2.parent())返回
4 兄弟標簽-siblings方法
object_2 = doc.find('.object-2')print(object_2.siblings())返回
五、獲取標簽的信息
定位到目標標簽后,我們需要標簽內部的文本或者屬性值,這時候需要進行提取文本或屬性值操作
1 標簽屬性值的提取
.attr() 傳入 標簽的屬性名,返回屬性值
object_2 = doc.find('.object-2')print(object_2.attr('class'))返回
object-22 標簽內的文本
.text()
返回
簡單好用的 PyQuery Hello World! Python 大法 好返回
Python Hello World! Python 大法 好tips:如果我只想獲得Hello World這個,不想得到其他的文本,可以使用remove方法將li標簽去掉,然后再使用text方法
container = docs.find('#container')container.remove('li')print(container.text())返回
Hello World!pyquery一些自定義的用法
訪問網址
PyQuery與BeautifulSoup對比,我們會發現PyQuery可以對網址發起請求。 比如
from pyquery import PyQueryPyQuery(url = 'https://www.baidu.com')opener參數
這是PyQuery對百度網址進行請求,并將請求返回的響應數據處理為PyQuery對象。一般pyquery庫會默認調用urllib庫,如果想使用selenium或者requests庫,可以自定義PyQuery的opener參數。
opener參數作用是告訴pyquery用什么請求庫對網址發起請求。常見的請求庫如urllib、requests、selenium。這里我們自定義一個selenium的opener。
這時候我們就能對PyQuery對象進行操作,提取有用的信息。具體請看上次的分享,如果想了解更多的功能,pyquery文檔寫的不怎么詳細,好在基本跟jQuery功能吻合,我們如果想用好pyquery,需要查看jQuery文檔。
cookies、headers
在requests用法中,一般為了訪問網址更加真實,模仿成瀏覽器。一般我們需要傳入headers,必要的時候還需要傳入cookies參數。而pyquery庫就有這功能,也能偽裝瀏覽器。
讓你的selenium帶上pyquery功能
讓driver訪問的網址得到的網頁直接變為PyQuery對象,更方便提取數據
返回
以上就是本文全部內容啦!
最后,小編想說一句話:我是一名python開發工程師,整理了一套最新的python系統學習教程,包括從基礎的python腳本到web開發、爬蟲、數據分析、數據可視化、機器學習,面試寶典,面試寶典,面試寶典。想要這些資料的可以關注小編,并在后臺私信小編:“07”即可領取。
總結
以上是生活随笔為你收集整理的python contains类似函数_五步教会你用python爬虫神器PyQuery!(内含详细步骤和代码)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LPR利率下调的影响有哪些?房贷利率会下
- 下一篇: python 读取outlook_如何用