日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python学习(三)--跟着例子写的贴吧网页爬取

發布時間:2024/4/15 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python学习(三)--跟着例子写的贴吧网页爬取 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
from urllib import request
import urllib

#爬貼吧網頁文件到本地。首先在本地打開百度貼吧 搜索 java吧
#第一頁的內容是:http://tieba.baidu.com/f?ie=utf-8&kw=java&fr=search&red_tag=f0746297280
#第二頁 http://tieba.baidu.com/f?kw=java&ie=utf-8&pn=50
#第三頁 http://tieba.baidu.com/f?kw=java&ie=utf-8&pn=100
#第四頁 http://tieba.baidu.com/f?kw=java&ie=utf-8&pn=150
#看規律 只有第一頁比較特殊 把第一頁換成:http://tieba.baidu.com/f?kw=java&ie=utf-8&pn=0 也是可以的
#也就是地址欄實際上是 http://tieba.baidu.com/f?kw=java(如果是中文需要轉碼)&ie=utf-8&pn=0(格式為:(頁數-1)*50)

def load_file(url, fname):
print("正在下載:"+fname)
# 水果手機的safari
header = {"user-agent":
"Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5"}
req = request.Request(url, headers=header)   #這里是read方法 就讀取到了原始網頁 開始加了decode方法,結果報類型錯誤。decode方法把內容解析成了一個字符串

data = request.urlopen(req).read() return data






def spider(url, begin, end, fileName):
#rang函數 理解的類似于java的字符串切割的包左不包右原則,所以需要+1
for page in range(begin, end+1):
url = url +str((page-1)*50)
fname = fileName +str(page) +"頁.html"
html = load_file(url, fname)
writePage(html, fname)


def writePage(html, fname):
print("正在保存:"+fname)
#存放位置
targetLoaction = "D:\瀏覽器下載目錄\images" + "\\"+fname
print("保存文件為:"+targetLoaction)
with open(targetLoaction, "wb") as f:
f.write(html)

print(fname+"爬取成功")


if __name__ == "__main__":
name = input("請輸入要爬取的貼吧名:")
begin = int(input("請輸入起始頁:"))
end = int(input("請輸入尾頁:"))

if int(begin) > int(end) :
print("起始頁不可大于尾頁")
quit()

#組裝url
kw = urllib.parse.urlencode({"kw":name})
url = "http://tieba.baidu.com/f?kw="+kw+"&ie=utf-8&pn="
fileName = "爬取"+name+"吧第"

spider(url, begin, end, fileName);




轉載于:https://www.cnblogs.com/fuguang/p/10607126.html

總結

以上是生活随笔為你收集整理的python学习(三)--跟着例子写的贴吧网页爬取的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。