国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 邢台市| 灯塔市| 开江县| 宁化县| 阿克苏市| 阿尔山市| 徐州市| 丹东市| 万州区| 新巴尔虎左旗| 绵竹市| 瑞昌市| 连州市| 安国市| 鸡东县| 墨脱县| 五寨县| 宜章县| 蓝田县| 上林县| 滦平县| 安塞县| 钟祥市| 娱乐| 桃江县| 怀来县| 内乡县| 小金县| 承德县| 石楼县| 界首市| 安远县| 大庆市| 阜平县| 增城市| 任丘市| 秭归县| 五寨县| 阿巴嘎旗| 墨竹工卡县| 庆云县|