用BeatifulSoup爬取百度貼吧(主樓文字)

2021-07-26 12:20:43 字數 830 閱讀 1622

最近學習大資料分析,發現很多庫都是python的,於是學學python來抓一些資料進而分析。貼吧算是資料**之一。

print(urls.__len__()) #獲取總共的頁面數,貼吧有可能抽風,每次獲取的數目都不一樣,實在不行可以人工指定了個最大的數

pageno = urls.__len__()

#pageno = 10 #人工指定最大頁面數

for i in range(1, pageno, 1):#從第一頁到最後一頁

url = ''+str(i) #獲取每頁的url位址

print(url) #控制台列印頁面位址看是否正確

r = requests.get(url)#獲取url對應的頁面

r.encoding = 'utf-8'

r = r.text.encode('utf-8')#頁面資訊編碼

soup = beautifulsoup(r, 'lxml')#用lxml直譯器格式化頁面資訊

for link in soup.find_all('div', 'p_content'): #用find_all方法查詢div名字為p_content 的內容,取不同部分的內容填入不同的div名字,但是有時候提取不到內容,待研究

context = link.get_text().encode('gb18030')#獲取的內容編碼,必須是gb18030不然就是中文亂碼

#print f, context

f.write(context + "\t" + "\n")#插入製表符和換行符並寫入txt檔案

f.close()#以上是for迴圈,迴圈完畢後txt檔案關閉。隨後在本py檔案的同檔案下就可以檢視txt檔案內容了

用Request爬取實戰

如果想要在請求的時候增加一些請求頭,用request.request。比如要增加乙個user agent 在拉勾網的職業資訊通過另外的 再通過js嵌入到主頁面的html 當中的 真正的職業資訊 在json.cn中解碼得 請求頁面,還有請求方式為post from urllib import requ...

用 scrap 爬取處理 csv 源

1.以 csvdeed 模板建立爬蟲的流程 1.建立專案 scrapy startproject mycsv 2.編寫 item.py 檔案,定義要提取的資料 3.檢視可用爬蟲模板 scrapy genspider l 4.以 csvfeed 模板建立乙個 mycsvspider.py 檔案,在 s...

用python爬取小說章節內容

在學爬蟲之前,最好有一些html基礎,才能更好的分析網頁.主要是五步 1.獲取鏈結 2.正則匹配 3.獲取內容 4.處理內容 5.寫入檔案 如下 匯入相關model from bs4 import beautifulsoup import requests import re 獲取目標鏈結位址 ur...