Scrapy是一个用Python编写的快速开源高级屏幕抓取和Web爬行框架,用于抓取网站并从其页面中提取结构化数据。它可用于各种用途,从数据挖掘到监控和自动化测试。
我尝试使用 scrapy playwright 从该网站抓取一些内容:https://www.scrapethissite.com/pages/ajax-javascript/。 我添加了我试图抓取的 html 代码: html代码 我...
Scrapy 错误:下载时出错 - 无法打开 CONNECT 隧道
我写了一个蜘蛛来爬行https://tecnoblog.net/categoria/review/,但是当我让蜘蛛爬行时,出现一个错误: 2015-05-19 15:13:20+0100 [scrapy] 信息:Scrapy 0.24.5 启动(机器人:重新...
如何为scrapy编写一个DownloadHandler,通过txsocksx发出socks4请求
我正在做一个大学项目,但我需要让下面的代码与socks4而不是tor/socks5一起工作。我尝试将 SOCKS5Agent 修改为 SOCKS4Agent 但随后收到错误: 原创...
我使用 Tor 来抓取网页。 我启动了 Tor 和 Polipo 服务并添加了 class ProxyMiddleware(object): # 覆盖进程请求 def process_request(自身,请求,蜘蛛): # 设置
我正在使用 ntscraper 库从特定用户获取推文。目前,该脚本获取最新的推文,但它仅提取脚本运行时预先存在的推文。这里是...
我有一个非常基本的蜘蛛,按照入门指南中的说明进行操作,但由于某种原因,尝试将我的项目导入到我的蜘蛛中会返回错误。蜘蛛和物品代码显示在...
我有这个非常基本的 lua 脚本,它返回一个错误,但是直接在控制台中运行 querySelector 就可以了。 关于我的 lua 出了什么问题有什么提示吗? 函数 main(splash, args...
在这个网站上,有许多卡片可以在网站的多个区域访问。我正在尝试抓取该网站以根据标题返回其所有实例(以其网址的形式)...
我正在寻找一种方法,为 Scrapy 生成的每个日志添加生成它的蜘蛛的名称作为前缀。到目前为止,我在循环中同步启动每个蜘蛛,因此很容易跟踪...
我根据教程制作了代码,实际上是一样的。那家伙从终端运行它,并使用 .csv 文件作为输出,但是当我运行它时,它出现了很多运行该文件的选项,但没有使
我已经对 Scrapy 进行了编程,以废弃我存储在数据库中的数千个 url 链接。我已经编写了一个蜘蛛程序来调用 scrapy.Requests 函数,并从数据库中传递 url。Ho...
我希望 Scrapy 蜘蛛在不先发出请求的情况下生成一个项目。我需要以下功能,但不需要向 example.com 发出请求。 测试蜘蛛类: 名称=“测试” def __i...
FastAPI 事件循环和 Scrapy 的 Twisted 线程不能很好地协同工作
我有一个 Scrapy 蜘蛛,我从 FastAPI 中实现的 Rest API 端点触发它。 Scrapy 提供了从 Python 脚本启动蜘蛛的功能,如下所示: 从 scrapy.crawler 导入 CrawlerProc...
我想从脚本运行我的蜘蛛而不是废料爬行 我找到了这个页面 http://doc.scrapy.org/en/latest/topics/practices.html 但实际上它并没有说明将该脚本放在哪里。 任意
我用蜘蛛创建了一个新的scrapy项目(多个待添加)。如果启动的话,蜘蛛程序工作没有任何问题 scrapy 爬行 myspider 然而,当我尝试从铜上运行刮刀时...
我有这只蜘蛛: 导入日志记录 从 scrapy 导入 Spider、请求、设置 从虚拟导入设置 从 dummy.items 导入 DummyItem LOGGER =logging.getLogger(__name__) DummySpi 类...
Python Scrapy 导入 ItemLoader 问题
Python 和 scrapy 新手。也许你觉得这个问题很愚蠢:D 从 scrapy.loader.processors 导入 TakeFirst、MapCompose 从 scrapy.loader 导入 TakeFirst、MapCompose 从 scrapy.item 导入 Tak...
我是 Scrapy 的新手,正在练习用它获取页面。 我的目的是获取某些 标签的内容,但 Scrapy 呈现出奇怪的行为。 这是一个从 Scrapy 运行的案例 </desc> <question vote="0"> <p>我是 <a href="https://scrapy.org/" rel="nofollow noreferrer">Scrapy</a> 的新手,正在练习用它获取页面。</p> <p>我的目的是获取某些 <pre><code><script></code></pre> 标签的内容,但 Scrapy 呈现出奇怪的行为。</p> <p>这是一个从 Scrapy shell 运行的案例。</p> <pre><code>>>> fetch('https://www.google.com/') 2024-11-30 12:36:23 [scrapy.core.engine] INFO: Spider opened 2024-11-30 12:36:23 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.google.com/> (referer: None) >>> response.xpath('//script') [<Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>, <Selector query='//script' data='<script nonce="HGzmQO5tqFTVnT_NTw2JDQ...'>] >>> fetch('https://scrapy.org/') 2024-11-30 12:36:53 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://scrapy.org/> (referer: None) >>> response.xpath('//script') [<Selector query='//script' data="<script>\n(function(i,s,o,g,r,a,m){i['...">, <Selector query='//script' data='<script type="text/javascript">\n!func...'>, <Selector query='//script' data='<script id="6senseWebTag" src="https:...'>, <Selector query='//script' data='<script src="//scrapinghub.refersion....'>, <Selector query='//script' data='<script>try { _refersion(); } catch (...'>, <Selector query='//script' data='<script async src="https://www.google...'>, <Selector query='//script' data='<script>\n window.dataLayer = window....'>, <Selector query='//script' data='<script>\n!function(q,e,v,n,t,s){if(q....'>, <Selector query='//script' data='<script>\n !function(f,b,e,v,n,t,s)\n ...'>, <Selector query='//script' data='<script type="text/javascript">\n_link...'>, <Selector query='//script' data='<script type="text/javascript">\n(func...'>, <Selector query='//script' data='<script src="/js/widynamic.js" defer>...'>, <Selector query='//script' data='<script type="text/javascript">\n\twind...'>] >>> fetch('https://www.google.com/') 2024-11-30 12:37:00 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://consent.google.com/ml?continue=https://www.google.com/&gl=IT&m=0&pc=shp&uxe=none&cm=2&hl=it&src=1> from <GET https://www.google.com/> 2024-11-30 12:37:00 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://consent.google.com/ml?continue=https://www.google.com/&gl=IT&m=0&pc=shp&uxe=none&cm=2&hl=it&src=1> (referer: None) >>> response.xpath('//script') [] </code></pre> <p>我不明白为什么我第二次获取 Google 时没有 <pre><code>script</code></pre> 标签。我没有其他网站的 <pre><code>script</code></pre> 标签,甚至在第一次获取时也没有。我无法解释为什么会发生。</p> <p>我使用的是Scrapy 2.11.2。</p> <p>您对这个问题有什么提示吗?</p> <p>附注如果我使用 <pre><code>curl</code></pre> 获取同一页面,我会看到 <pre><code>script</code></pre> 标签。</p> </question> <answer tick="false" vote="0"> <p>正如评论中所述,问题在于 cookie 管理。此外,我发现问题出在另一种情况下的默认用户代理上。指定它可以解决问题。</p> </answer> </body></html>
Scrapy 中“CONCURRENT_REQUESTS_PER_IP”设置的目的是什么?它如何与“CONCURRENT_REQUESTS”一起使用? 我正在使用代理提供商来处理他们这边的代理轮换。如果...
我正在寻找 Scrapy 中 SQLite 管道的一些示例代码。我知道没有内置的支持,但我确信它已经完成了。只有实际代码可以帮助我,因为我只了解足够的 Pyt...