
Python爬虫
文章平均质量分 56
使用 Python 进行网页抓取的各种技术,从简单的 Requests 到强大的 Scrapy,以及处理动态网页的 Selenium
一勺菠萝丶
做一个俗人,贪财好色,一世风流
展开
-
Python 输出华丽分割线的方式大全
在 Python 编程中,有时候我们需要为日志、输出结果或者调试信息添加一些分割线,方便视觉上的区分。这篇文章将介绍几种常见的方法和一些创意的分割线设计,帮助你让代码输出更具美感和个性化。原创 2024-12-28 14:47:37 · 545 阅读 · 0 评论 -
警惕爬虫技术中的法律风险:开发者必知的法规与案例分析
爬虫(Crawler)是一种通过编写程序自动化访问互联网,收集、下载网页数据并提取有用信息的技术工具。它广泛应用于搜索引擎、数据分析等领域。然而,由于爬虫可以在大量访问和抓取数据的过程中对网站和服务器带来巨大压力,因此滥用爬虫技术可能导致法律风险。原创 2024-11-15 11:54:08 · 985 阅读 · 0 评论 -
解决 Scrapy 下载图片时的 Pillow 依赖问题
这个警告提示说明你在使用 Scrapy 的时,缺少了必要的依赖库Pillow。Pillow是一个用于处理图像的 Python 库,是 Scrapy 用来处理下载图像的必备组件。原创 2024-05-21 09:38:31 · 1107 阅读 · 0 评论 -
解决Scrapy下载图片时, 报错 `tldextract` 缓存错误的问题
在使用Scrapy这个错误提示说明在使用tldextract库解析顶级域名(TLD)时,无法将公共后缀列表缓存到默认位置(通常是~/.cache目录)因为权限不足。下面是几种解决方案,可以帮助你解决这个问题。原创 2024-05-21 09:34:51 · 1118 阅读 · 0 评论 -
使用 Scrapy 下载图片的两种方式
直接链接下载:适用于绝大多数公开访问的图片文件,操作简单且性能较好。通过下载链接下载:适用于需要通过验证或时效性链接获取图片的情况,安全性更高但操作稍复杂。原创 2024-05-16 11:47:28 · 1088 阅读 · 0 评论 -
Scrapy 中 `file_path` 方法被多次调用的原因及排查方法
file_path方法被多次调用的原因可能是 Scrapy 的重试机制、并发请求处理以及内部多次处理 item 的机制。通过添加详细的调试信息并分析调用堆栈,可以准确找出多次调用的具体原因,并采取相应的措施进行优化。原创 2024-05-16 11:17:58 · 484 阅读 · 0 评论 -
如何解决 Scrapy 下载图片时的文件名错误问题
首先,我们定义一个函数,这个函数会移除或替换文件名中的非法字符。import re# 移除文件名中的非法字符,替换为下划线最后,我们需要在 Scrapy 项目的文件中启用自定义的 ImagesPipeline。原创 2024-05-16 11:04:19 · 399 阅读 · 0 评论 -
scrapy setting中设置mysql和redis配置文件
在使用scrapy的时候会涉及到在pipeline中连接数据库, 如果mysql的配置文件配置到pipeline中会有一定的耦合性, 因为尝试把配置文件提取到settings.py中settings.py中如下配置MYSQL_HOST = "192.168.0.82"MYSQL_USER = "developer"MYSQL_PASSWORD = "Diandong@developer2020"MYSQL_DBNAME = "data_crawl"MYSQL_PORT = 3306pipel原创 2022-05-31 13:48:29 · 466 阅读 · 0 评论 -
使用 Python/Scrapy 在 h1 中提取 p
在使用scarpy + xpath进行数据抓取的时候一直获取不到标题, 网站地址: https://www.cnpython.com/qa/244771 html结构如下显示标题是被h1中的p标签包含, 使用正常xpath进行获取title = resp.xpath('//[@class="py-4 border-b-2 border-gray-100"]/div/h1/p/text()').extract()获取到title为空, 但解析abstract却能获取到, 说明不是xpath的原因,原创 2022-05-30 11:26:35 · 645 阅读 · 1 评论 -
python scrapy_redis 解决断点续爬时request请求为空, 再次启动时爬取失败办法
如果在使用scrapy进行断点续爬的时候 正好request中没有要爬取的链接了, 这个时候如果直接启动爬虫项目则会续爬失败, 达不到断点续爬的目的, 为此经过测试得出解决办法注意点一需要在次启动程序时候, 当作新的一个请求, 从新往redis中设置start_url值, 但此时需要注意, 翻页的时候就得添加dont_filter=True, 因为如果不加scrapy会自动进行去重请求, 假如翻页的这几个链接已经被爬取过了, 当从头跑的时候, 经过去重集合去重, 会认为所有的页码都已经爬取过了, 然后爬原创 2022-05-12 17:42:59 · 1081 阅读 · 0 评论 -
成功解决 AttributeError: ‘TySpider‘ object has no attribute ‘make_requests_from_url‘
在使用分布式爬虫爬取网站的时候出现问题2022-04-19 14:21:28 [scrapy.utils.signal] ERROR: Error caught on signal handler: <bound method RedisMixin.spider_idle of <TySpider 'ty' at 0x24493b06e50>>Traceback (most recent call last): File "g:\python38\lib\site-packa原创 2022-04-19 14:25:57 · 3215 阅读 · 5 评论