分析貼吧的url規律。
第1頁:
pn=0
第2頁:
pn=50
第3頁:
pn=100
pn是控制頁碼的。著重關注**封裝的思路。
fromurllib
import
request, parse
import
osimport
ssl
# 解決ssl證書問題
# 處理url,返回request
def
handle_url(url, page, name):
# 拼接url
pn = (page
-1) *
50data =
data = parse.urlencode(data)
url = url
+data
req = request.request(url=url)
return
req
def
download(req, page):
response = request.urlopen(req)
dirname = 'tieba'
filename = '第'
+str(page) +
'頁.html'
filepath = os.path.join(dirname, filename)
with
open(filepath, 'wb') as
fp: fp.write(response.read())
defmain():
name = input('請輸入要爬取的貼吧名:')
start_page = int(input('請輸入起始頁碼:'))
end_page = int(input('請輸入起始頁碼:'))
url = ''
for
page
inrange(start_page, end_page
+1):
# 封裝函式獲取request物件
req = handle_url(url, page, name)
%page)
download(req, page)
%page)
if__name__ == '__main__':
main()
基礎爬蟲函式封裝
匯入模組 import json 封裝get 請求 defget url,headers none return urlrequests url,headers headers 封裝post 請求 defpost url,form,headers none return urlrequests ur...
python爬蟲基礎封裝函式
匯入包,模組 儲存cookie 對於有登入是 所將使用者記錄下來 class session object def init self cookie object cookiejar.cookiejar handler 對應著乙個操作 呼叫handler內部的乙個函式,儲存到cookie objec...
爬蟲基礎 函式封裝 更新一
匯入包,模組 儲存cookie 對於有登入是 所將使用者記錄下來 class session object def init self cookie object cookiejar.cookiejar handler 對應著乙個操作 呼叫handler內部的乙個函式,儲存到cookie objec...