主函数创建文件用于保存数据,并对程序计时,以观察执行效率 。
三、项目分析和说明1.运行测试整个小项目很简单,重点在分析过程和思路,只要分析好了 , 代码实现就很容易 。一次测试的示意如下:
京东评论爬取单线程运行
效率还是很不错的,23秒内获取了近千条评论 。
数据部分截图如下:
京东评论数据
如果需要获取其他商品评论在代码中直接更改函数中url的productId即可 。
完整代码可点击https://download.csdn.net/download/CUFEECR/12323279下载 。
2.改进分析
- 采用的是单线程,在数据较少时尚可 , 一旦需要爬取的评论较多时,可能会有效率上的瓶颈,因此可以用多线程或多进程,主函数中改进如下:
pool = ThreadPoolExecutor(3)...for page in range(100): pool.submit(comment_crawl, page, data_list)
代码可点击https://download.csdn.net/download/CUFEECR/12323373下载学习 。演示如下:京东评论爬取多线程运行
运行时间缩短了三分之一左右,显然大大提高了效率 。
- 因为京东的反爬措施较少 , 因此对反爬的防范措施也较少,爬取较少尚可,如果需求较高时 , 肯定会触发反爬机制,从而导致爬取失败 。
- 扩展性还有待提高,目前只是爬取了京东商品评论 , 但是对于别的电商平台如淘宝就很难搞了,这对代码提出了进一步要求 。
- 本项目仅限学习和技术交流之用,不得用于恶意爬虫、非法牟利等用途,违者责任自负 。
- 如侵犯他人利益,请联系删改 。
推荐阅读
- 石墨烯电池冬天耐用吗 电瓶车石墨烯电池冬天耐用吗
- 全球公认最好用的10大素颜霜 素颜霜和粉底液的区别
- 你拨打的用户已启动通讯助理漏话提醒是什么意思
- 哈尔滨极地馆儿童不到120用买票吗?
- 方舟麻醉药怎么涂弓箭上 方舟麻醉剂怎么用在弓箭上
- 房屋抵押贷款的用途和要求包括有哪些
- 手机卡几个月不用会自动注销 电信手机卡几个月不用会自动注销
- 为啥停了一次电WiFi不能用了,停了电wifi不能用了怎么回事
- 手机不能打电话了怎么回事 电话停机怎么恢复使用
- 手机怎么制作pdf文件 手机文件怎么打印出来