爬取豆瓣阅读提供方
代码中会有详细的注释
关于python也是在看教程和书以及视频学习,纯种小白(哈士奇的那种)
用到的库
- urllib -> 爬虫库
- re -> 正则模块
- xlwt -> excel写模块
- time -> 时间模块
urllib库伪装浏览器的固定写法(也可以再加)
加个代理ip,也可以不加直接使用自己的ip地址
代理ip -> '123.116.129.176'
通过正则获取内容
更加详细的用法百度可以找到很多,我就不一一的列出来了
这里有个坑,第一个匹配出来的url地址不对,原因是网页中有个非列表标签内的居然和正则开始的匹配(列表标签)是一致的
写入excel的操作
部分代码
# 创建workbook和sheet对象
workbook = xlwt.Workbook()
# excel 底部 sheet1
# 覆盖单元格
sheet1 = workbook.add_sheet('统计', cell_overwrite_ok=True)
...
for i in content:
# 在第 row + 1 行第 1 列写入序号
sheet1.write(row + 1, 0, row + 1, style)
# 在第 row + 1 行第 2 列写入出版社_url
sheet1.write(row + 1, 1, "https://read.douban.com{}".format(str(i[0])), style)
# 在第 row + 1 行第 3 列写入LOGO_url
sheet1.write(row + 1, 2, i[1], style)
# 在第 row + 1 行第 4 列写入出版社名称
sheet1.write(row + 1, 3, i[2], style)
# 在第 row + 1 行第 5 列写入在售数量
sheet1.write(row + 1, 4, int(i[3]), style)
# 对在售数量求和
sum += int(i[3])
row += 1
时间模块的用法
获取当前时间并格式化:time.strftime("%Y%m%d%H%M%S", time.localtime())
将对一列数据(在售数量)求和以及数据保存
需要注意,这里写个判断语句要等到基础数据都写入完毕之后在进行求和运算并写入
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。