日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python contains类似函数_五步教会你用python爬虫神器PyQuery!(内含详细步骤和代码)...

發布時間:2023/12/10 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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-2

2 標簽內的文本

.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!(内含详细步骤和代码)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。