国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python爬蟲獲取多頁(yè)天涯帖子

2020-02-22 23:18:09
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

今天練習(xí)了抓取多頁(yè)天涯帖子,重點(diǎn)復(fù)習(xí)的知識(shí)包括

soup.find_all和soup.selcet兩個(gè)篩選方式對(duì)應(yīng)不同的參數(shù); 希望將獲取到的多個(gè)內(nèi)容組合在一起返回的時(shí)候,要用'zip()'的代碼來(lái)實(shí)現(xiàn); 兩層代碼結(jié)構(gòu)之間的關(guān)系如何構(gòu)造;

這里有一個(gè)疑問(wèn):有時(shí)候一個(gè)標(biāo)簽可以有多個(gè)屬性,不知道soup.find_all()能不能接受不止一個(gè)屬性以縮小查找的范圍。

# 引入庫(kù)和請(qǐng)求頭文件import requestsfrom bs4 import BeautifulSoupheaders = {  'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36'}# 定義主體函數(shù)。函數(shù)主體由四部分組成:#1.請(qǐng)求網(wǎng)址#2.解析網(wǎng)頁(yè),形成可查找的html格式#3.通過(guò)soup.select或者sopu.find_all查找需要的標(biāo)簽#4.通過(guò)zip()代碼將多個(gè)內(nèi)容合并在一起def get_content(url):  res = requests.get(url,headers = headers)  res.encoding = 'utf-8'  soup = BeautifulSoup(res.text,'html.parser')  contents = soup.find_all('div','bbs-content')  authors = soup.find_all('a','js-vip-check')  for author,content in zip(authors,contents):    data = {    'author':author.get_text().strip(),    'content': content.get_text().strip()  }    print(data)# 在這里構(gòu)造一個(gè)兩層鏈接結(jié)構(gòu):帖子的1、2、3、4頁(yè)和帖子的詳情頁(yè)的關(guān)系在這里實(shí)現(xiàn)if __name__ == '__main__':  urls = ['http://bbs.tianya.cn/post-develop-2271894-{}.shtml'.format(str(i)) for i in range (1,5)] # 要注意,這里的‘5'是不包括在范圍里的  for url in urls:    get_content(url)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宜丰县| 清水县| 偏关县| 阿克| 永泰县| 柳州市| 福清市| 沭阳县| 聊城市| 雷州市| 阳原县| 蚌埠市| 北票市| 陇西县| 天柱县| 池州市| 高要市| 宁国市| 盈江县| 通河县| 井研县| 铁岭市| 尼玛县| 沁源县| 洞头县| 福贡县| 博湖县| 伊通| 孙吴县| 濮阳市| 阳新县| 天全县| 那曲县| 禹州市| 苏尼特左旗| 孟津县| 海南省| 南开区| 宝应县| 德保县| 沙坪坝区|