第一步,爬取所有图书标签及分类
到达图书标签页,分类浏览,第一步需要爬取所有分类及其分类下的所有标签
并用dict存储
需要解析的内容
1.bs4解析
import requests
from bs4 import BeautifulSoup
url = 'https://book.douban.com/tag/?view=type'
tag_dict = {}
def get_dict(): #接口,提供这个标签字典
return tag_dict
r = requests.get(url)
soup = BeautifulSoup(r.text,'lxml')
title = soup.select('div div a h2') #第一步找到h2标签,因为更细致,a标签就找不到
#然后通过h2标签找到爷爷级标签,就是div盒子了
for i in title:
a = i.find_parent() #找到父亲a标签
div = a.find_parent() #找到父亲div
tag_title = a.select('h2')[0].get_text()[:2] #找到h2标签取出内容并切片取出前两个字
tags = div.select('tr td a') #找到td中的a标签
tag_list = []
for j in tags:
tag_list.append(j.get_text()) #循环取出a标签中的内容
tag_dict[tag_title] = tag_list
for i in tag_dict:
print(i+':',end='')
print(tag_dict[i])
-------------------------------------------------------------------------------
文学 ['小说', '外国文学', '文学', '随笔', '中国文学', '经典', '日本文学', '散文', '村上春树', '诗歌', '童话', '儿童文学', '古典文学', '王小波', '名著', '杂文', '余华'