鱼C论坛

 找回密码
 立即注册
查看: 4668|回复: 7

Scrapy 如何把网页上的图片和文字都下载下来,保存成PDF格式

[复制链接]
发表于 2017-3-4 17:30:22 | 显示全部楼层 |阅读模式
30鱼币
我用scrapy现在已经能抓到文字和图片的链接,但是下一步不知道怎么保存,如何把图片和文字保存在一起,格式和网页一样呢?

就是pipline那块不知道怎么写,保存成PDF是不是还要借助别的模块?

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-3-6 11:20:50 | 显示全部楼层
  1. from scrapy.pipelines.images import ImagesPipeline
  2. from scrapy.exceptions import DropItem
  3. from scrapy import Request


  4. class MmjpgPipeline(ImagesPipeline):
  5.     def get_media_requests(self, item, info):
  6.         for image_url in item['image_url']:
  7.             yield Request(image_url)

  8.     def item_completed(self, result, item, info):
  9.         image_paths = [x['path'] for ok, x in result if ok]
  10.         if not image_paths:
  11.             raise DropItem('图片未下载好 %s' % image_paths)

  12. 这一段是我用的下载图片的piplines的代码,给你参考参考。然后setting里面也有个设置,在scrapy的官方文档里面有写,那个基本就是照抄。
  13. 文字部分,在spider里面卸载parse里面写就可以了。
  14. 但是如果你想直接把两者组合起来,那我就不知道了。
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-3-6 16:14:21 | 显示全部楼层

嗯,我想结合在一起,相当于把网页扫描了一遍那样
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-3-6 16:39:41 | 显示全部楼层
那你可以试试pdfkit,好像很简单!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-3-7 16:35:26 | 显示全部楼层
ooxx7788 发表于 2017-3-6 16:39
那你可以试试pdfkit,好像很简单!

嗯嗯,谢谢啊
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-3-7 16:39:08 | 显示全部楼层
另外,想请教下,有没有scrapy和pdfkit结合使用的资料?找了一圈,好像pdfkit和Beautifulsoup结合起来用的比较多
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-3-7 17:04:54 | 显示全部楼层
回忆的小豆豆 发表于 2017-3-7 16:39
另外,想请教下,有没有scrapy和pdfkit结合使用的资料?找了一圈,好像pdfkit和Beautifulsoup结合起来用的 ...

pdfkit只要有网页就可以把html生成pdf了,理论上只要在scrapy的spider 里面的parse里面添加进pdfkit就实现了扫描网页的功能了。至于你要扫描哪些页面,只要在start_urls和rules里面设定好,应该就可以实现。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-3-8 10:23:07 | 显示全部楼层
学习了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-6 12:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表