爬虫背景
目的:下载豆瓣图片标为‘小说’下的所有基本信息并导出到CSV文件
复制前的url:https://book.douban.com/tag/小说?start=0&type=T
复制后的url:https://book.douban.com/tag/%E5%B0%8F%E8%AF%B4?start=0&type=T
使用到的模块: 1、urllib.request 2、requests 3、BeautifulSoup 4、csv
分析过程:
1、使用urllib.request.quote解决中文到ASCII的编码问题
2、使用requests模块进行网页请求
3、使用BeautifulSoup解析网页内容
4、使用CSS删选器查找相应要爬取的内容。注:使用定位元素后右击COPY-COPY SELECTOR 直接复制定位代码(对小白来说神器啊!!!)
5、使用python自带csv模块导出文件(这个还不熟悉)
爬虫结果图:
代码如下:
# 爬取豆瓣读书各分类下的小说主要信息:['书名', '作者', '出版时间', '价格(元)', '评分', '评价人数']
import urllib.request
import requests
from bs4 import BeautifulSoup
import csv
# 使用python 内置模块csv生成导出csv文件
key = '小说'
# 豆瓣网上的标签,可根据需要进行添加
# 本案例仅爬取‘小说’类下的所有书籍信息,如需下载其他分类,代码需稍微修改一下
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36'}
book_names = []
author_list = []
time_list = []
price_list = []
urls = []
number = 49
pingjias = []
rating_nums = []
#获取总计number个网页的URL
def page_urls(