Python 網頁爬蟲初試

2021-10-02 08:30:59 字數 1386 閱讀 5097

find()&find_all()

find( name , attrs , recursive , string , **kwargs )

find_all( name , attrs , recursive , string , **kwargs )

name 引數可以查詢所有名字為 name 的tag,字串物件會被自動忽略掉.

keyword 引數 如果乙個指定名字的引數不是搜尋內建的引數名,搜尋時會把該引數當作指定名字tag的屬性來搜尋

通過 string 引數可以搜搜文件中的字串內容.與 name 引數的可選值一樣, string 引數接受 字串 , 正規表示式 , 列表, true .

limit 引數

find_all() 方法返回全部的搜尋結構,如果文件樹很大那麼搜尋會很慢.如果我們不需要全部結果,可以使用 limit 引數限制返回結果的數量.效果與sql中的limit關鍵字類似,當搜尋到的結果數量達到 limit 的限制時,就停止搜尋返回結果.

recursive 引數

呼叫tag的 find_all() 方法時,beautiful soup會檢索當前tag的所有子孫節點,如果只想搜尋tag的直接子節點,可以使用引數 recursive=false .

引自beautiful soup文件

eplist = soup.find(

'table'

, class_ =

'bg-關都'

)

# 找出eplist下class屬性為bg-一般的td

move_list = eplist.find_all(

'td'

, class_ =

'bg-一般'

)# 將目標td的父元素,即所求tr加入目標陣列

target =

for i in move_list:

# 輸出

file_name =

'./moves.txt'

with

open

(file_name,

'w+'

)as f:

for i in target:

temp = i.find(

'a')

print

(temp.string)

f.write(

str(temp.string)

) f.write(

'\n'

)

執行結果如下

資料成功爬取,成了

爬蟲 scrapy初試

初步操作 scrapy startproject hello 建立hello專案 scrapy genspider chouti dig.chouti.com 建立乙個spider scrapy crawl chouti執行spider 指定執行chouti這個專案 引用進到spider 裡面 寫 ...

網頁爬蟲php,php網頁爬蟲

網頁爬蟲 最簡單的使用,屬性都採用預設值 curl curl init output curl exec curl curl close curl echo output 稍微複雜一點的,對頁面進行操作 curl curl init curl setopt curl,curlopt url,可以動態...

Python 爬蟲爬取網頁

工具 python 2.7 import urllib import urllib2 defgetpage url 爬去網頁的方法 request urllib.request url 訪問網頁 reponse urllib2.urlopen request 返回網頁 return response...