爬取豆瓣图书top250
豆瓣网址:https://book.douban.com/top250
豆瓣图书第一页:https://book.douban.com/top250?start=0
豆瓣图书第二页:https://book.douban.com/top250?start=25
豆瓣图书第三页:https://book.douban.com/top250?start=50
豆瓣图书第四页:https://book.douban.com/top250?start=75
……
……
从上面可以看出来,爬取豆瓣的URL,只要把最后的数字换成25的倍数就行了,用format()和range()组合:
urls = ['https://book.douban.com/top250?start={}'.format(str(i*25)) for i in range(0,10)]
请求头:
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36'}
创建CSV文件,待会存入数据:
import csv
f = open('C:/Users/ASUS/Desktop/doubanBook.csv','w+',newline='',encoding='utf-8')#编码换成utf-8,否则最后会出现编码异常
w = csv.writer(f)
w.writerow(('书名','书本的URL链接','作者','出版社','出版时间','书本价格','评分','评价'))#写入一行数据到CSV文件中
进入豆瓣图书网站,检查各个数据的位置,发现需要爬取的数据都在table标签里,这就是循环点,复制该标签