Skip to content

功能要求: 1、 网络爬虫,可以使用少量的3方库,但是最好能够用自己写的代码 2、 加分点:使用多线程,注意同步和锁 3、 将豆瓣(book.douban.com)里的关于“互联网,编程,算法”方面的书籍数据抓下来,并且显示评分最高的前100本数据(要求评价人数超过2000,不足2000的就提取前100) 4、 代码和爬下的结果(excel文件)一并放在github里,链接发给你们,再转给我。 5、 时间要求两天,即本周5早10点拿到结果。

Notifications You must be signed in to change notification settings

persevere1/DoubanCrawler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

DoubanCrawler

功能要求:

1、 网络爬虫,可以使用少量的3方库,但是最好能够用自己写的代码

2、 加分点:使用多线程,注意同步和锁

3、 将豆瓣(book.douban.com)里的关于“互联网,编程,算法”方面的书籍数据抓下来,并且显示评分最高的前100本数据(要求评价人数超过2000,不足2000的就提取前100)

4、 代码和爬下的结果(excel文件)一并放在github里,链接发给你们,再转给我。

5、 时间要求两天,即本周5早10点拿到结果。

大致想法:从初始链接进入,抓取所在页书籍,保存到excel文件中,然后进入下一页抓取,直至最后页,抓取完毕后,排序,排序规则是,评价人数超过2000人,评分从高至低,如果这样凑不齐100本,就从评价没超过2000的书籍中,按评分从高至低补充进队列,凑齐100,最后,将这100本书籍的信息输出到另一excel文件中

问题:

  • 该如何拆分抓取过程,以便使用多线程
  • 在哪里建立线程,线程里的run怎么写
  • 如何确定是否抓取完全部书籍

初始链接:https://book.douban.com/subject_search?search_text=%E4%BA%92%E8%81%94%E7%BD%91+%E7%BC%96%E7%A8%8B+%E7%AE%97%E6%B3%95&cat=1001

  1. 进入初始链接后,使用多线程抓取所有书籍链接,保存在书籍url列表中
  2. 检测下一页是否存在,如果找到了就去下一页,重复第一步,如果没找到就开始下一步
  3. 使用多线程从列表中取出链接,向列表中每一本书籍页面发起请求,获取页面信息,抓取书籍信息,保存在书籍info队列中
  4. 得到全部书籍info后,排序
  5. 排序后,取前一百输出到excel文件

DoubanBook的属性:作者s,出版社s,副标题s,原作名s,译者s,出版年s,页数s,定价s,装帧s,丛书s,ISBNs,评分d,评价人数i

About

功能要求: 1、 网络爬虫,可以使用少量的3方库,但是最好能够用自己写的代码 2、 加分点:使用多线程,注意同步和锁 3、 将豆瓣(book.douban.com)里的关于“互联网,编程,算法”方面的书籍数据抓下来,并且显示评分最高的前100本数据(要求评价人数超过2000,不足2000的就提取前100) 4、 代码和爬下的结果(excel文件)一并放在github里,链接发给你们,再转给我。 5、 时间要求两天,即本周5早10点拿到结果。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages