get案例 爬取百度貼吧

2021-10-20 18:53:26 字數 1031 閱讀 3298

需求 爬取貼吧的資料

1.輸入爬取貼吧的主題(列如 火影忍者)

2. 輸入起始頁和終止頁(列如 3- 5)

3. 把每一頁的資料儲存到本地(列如 第一頁.html 第二頁.html)

思路

第一頁

第二頁

第三頁

第四頁

pn = (page -1) * 50

發起請求 ----> 資料

儲存資料

```python

import urllib.request

import urllib.parse

#貼吧的主題

name = input('請輸入貼吧的名稱:')

begin = int(input('請輸入起始頁:'))

end = int (input('請輸入終止頁:'))

headers =

#對name進行處理

kw =

result = urllib.parse.urlencode(kw)

#1 2 3 pn 0 50 150

for i in range(begin,end+1):

pn = (i - 1) * 50

#print(pn)

#拼接url位址

base_url = ''

url = base_url + result + '&pn=' + str(pn)

#print(url)

#發起請求

req = urllib.request.request(url,headers=headers)

res = urllib.request.urlopen(req)

html = res.read().decode('utf-8')

#儲存資料

filename = '第' + str(i) + '頁.html'

with open(filename,'w', encoding='utf-8') as f:

f.write(html)

ulrlib案例 爬取百度貼吧

因此,傳送get請求時,設定不同的kw可以訪問不同的貼吧。同一主題的貼吧中,有分頁,通過點選不同的分頁,可以看出,url中的pn規律變化 第1頁 pn 0 第2頁 pn 50 第3頁 pn 100 據此規律可以爬取不同頁數的網頁。1 from urllib import request,parse ...

爬取百度貼吧

import urllib.request import urllib.parse import os,time 輸入貼吧名字 baname input 請輸入貼吧的名字 start page int input 請輸入起始頁 end page int input 請輸入結束頁 不完整的url ur...

爬取百度貼吧

帶入需要使用的包 from urllib import request,parse importos 基礎知識 變數賦值 字串賦值 爬取的關鍵字 kw lol 數值賦值 爬取的頁數範圍 start 1end 4 輸出 print kw,start,end 宣告需要爬取的連線 base url 建立資...