爬蟲入門 5 PyQuery簡介

2021-09-25 14:17:00 字數 2428 閱讀 1268

目前最新的版本是1.3,基於最新版本進行介紹。

主要根據pyquery的官方文件進行了更新。

from pyquery import pyquery as pq

from lxml import etree

import urllib

doc=pq('

')#解析文件的基本方法

p=doc('p')#獲取p標籤

print(p.attr('id'))#獲取p標籤的id屬性的值

p.attr('id','plop')#改變p標籤的id屬性的值為plop

print(p.attr('id'))

p.attr.id='snow'#使用python的方式改變id屬性

print(p.attr.id)

p.attr['id']='ola'

print(p.attr['id'])

p.attr(id='hello',class_='hello2')

print(p)

hello

plop

snow

ola

p.add_class('toto')#增加class內容

# print(p)

p.toggle_class('titi toto')#切換class內容

# print(p)

p.remove_class('titi')#移除class

# print(p)

#新增style,以font-size為例

p.css.font_size='16px'

p.css['font-size']='16px'

p.css=

#向標籤內容的尾部新增一些string

#pp()

#也可以向標籤的頭部新增

p.prepend('hello again! ')

#pp()

#或者使用這兩個命令新增到其他文件或者標籤的內容中

d=pq('python !

')p.prepend_to(d('#test'))#將p的內容新增到d的id為test的標籤裡面,佔據最開始的位置

#print(d('#test').html())#列印出id為test的標籤的內容

p.insert_after(d('#test'))#把p標籤放在id為test的標籤後面

#print(d('body').html())

p.insert_before(d('#test'))#把p標籤插入到id為test的標籤前面

#print(d('body').html())#可以看出來,p插入到了id為test的標籤的前面

#移除乙個元素

d=pq('yeah!

python rocks !

')d.remove('p#id')#移除了p標籤的id屬性

#print(d('body').html())

#將標籤的內容移除

d('p').empty()

#print(d('p'))

#可以將兩個pyquery物件連線起來:

print(pq('yeah !

').add_class('myclass') + pq('cool'))

d = pq('12')

#print(d('p').filter('.test1'))#按類選擇,class名為test1的p標籤。

#print(d('p').filter('#hello2'))#按id選擇,id名為hello2的p標籤

#print(d('p').eq(0))#第乙個p標籤

#print(d('p').eq(1))#第二個p標籤

"""return pyquery of only the element with the provided index:

>>> d = pyquery('hi

bye')

>>> d('p').eq(0)

>>> d('p').eq(1)

>>> d('p').eq(2)

"""#查詢巢狀的元素

#print(d('p').find('a'))

#print(d('p').eq(1).find('a'))

請參考官方文件的介紹。

#pyquery可以使用url載入html文件,預設使用python的urllib庫

print(pq(''))

#如果安裝了request庫,也可以使用並且可以使用requests的大多引數

pq('', headers=)

pq('', , method='post', verify=true)

爬蟲入門之pyQuery

pyquery庫是 jquery 的 python 實現,能夠以jquery的語法來操作解析 html 文件,易用性和解析速度都很好 安裝 pip3 install pyquery注意 由於 pyquery 依賴於 lxml 要先安裝 lxml 否則會提示失敗。pip3 install lxmlpy...

python 爬蟲學習入門5 requests庫

requests庫為我們提供了乙個封裝好的 庫函式,使用更為簡便 爬蟲步驟依然跟以前一樣 新增爬取 的url資訊,用 獲得網頁資訊 資料分析 資料儲存 resquests 庫的函式就相對簡單 import requests url requests.get url 呼叫get 函式即可取代urlli...

爬蟲入門 10 Pyspider框架簡介及安裝說明

pyspider是python中的乙個很流行的爬蟲框架系統,它具有的特點如下 1 可以在python環境下寫指令碼 2 具有webui,指令碼編輯器,並且有專案管理和任務監視器以及結果檢視。3 支援多種資料庫 4 支援定義任務優先順序,自動重試鏈結。5 分布式架構 等等優點。pyspider的設計基...