问题标签 [scrapy-splash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2719 浏览

web-scraping - 在 windows cmd 中安装 scrapinghub splash

我是使用scrapy / splash的新手。根据此处的说明,我已经成功安装了scrapy-splash。第二个要求是飞溅本身。我没有 docker,并且splash 文档没有关于如何在没有 docker 的情况下为 windows 安装 splash 的说明。有人可以帮忙吗?

这是我得到的错误消息

提前致谢!

0 投票
0 回答
150 浏览

django - 使用 scrapy-splash 配置 DDS。错误:没有基础对象

LS,

我已经安装了 Django-Dynamic-Scraper。我想通过 Splash 渲染 Javascript。因此,我安装了 scrapy-splash 并安装了 docker splash 图像。下图显示可以到达 docker 容器。

飞溅泊坞窗容器

然而,当我通过 DDS 对其进行测试时,它返回以下错误:

执行时:

我已配置 DDS 管理页面并选中复选框以呈现 javascript:

管理员配置

我遵循了scrapy-splash的配置:

我假设正确配置了 DDS/scrapy-splash,它会将所需的参数发送到 splash docker 容器进行渲染,是这样吗?

我错过了什么?我需要用启动脚本调整蜘蛛吗?

0 投票
2 回答
6359 浏览

scrapy - scrapy-splash 如何处理无限滚动?

我想对通过在网页中向下滚动生成的内容进行逆向工程。问题出在 url 中https://www.crowdfunder.com/user/following_page/80159?user_id=80159&limit=0&per_page=20&screwrand=933screwrand似乎没有遵循任何模式,因此反转 url 不起作用。我正在考虑使用 Splash 进行自动渲染。如何使用 Splash 像浏览器一样滚动?非常感谢!以下是两个请求的代码:

浏览器控制台中显示的 ajax 请求

0 投票
3 回答
1357 浏览

python - Scrapy with Splash Only Scraps 1 页

我正在尝试抓取多个 URL,但由于某种原因,只有 1 个站点显示的结果。在每种情况下,它都是显示的 start_urls 中的最后一个 URL。

我相信我的问题已缩小到我的解析函数。

关于我做错了什么的任何想法?

谢谢!

编辑:

我已经更改了我的代码以帮助调试。运行此代码后,我的 csv 如下所示:csv results 每个 url 都有一行,应该有,但只有一行填写了信息。

编辑 2:这是完整的输出http://pastebin.com/cLM3T05P 在第 46 行,您可以看到空单元格

0 投票
1 回答
1186 浏览

python - 使用带有scrapy和splash的javascript递归爬取同一页面

我正在抓取一个具有 javascript 的网站以转到下一页。我正在使用 splash 在第一页上执行我的 javascript 代码。但我能够进入第二页。但我无法进入 3,4,5.... 页面。仅一页后停止爬行。

我正在抓取的链接:http: //59.180.234.21:8788/user/ viewallrecord.aspx

编码:

我是scrapy和splash的新手。请温柔一点。谢谢

0 投票
1 回答
5794 浏览

scrapy - 当javascript发出多个请求时,如何在Scrapy+Splash中设置cookie?

加载 javascript 时,它会发出另一个 ajax 请求,其中应在响应中设置 cookie。但是,Splash 不会在多个请求中保留任何 cookie,有没有办法在所有请求中保留 cookie?甚至在每个请求之间手动分配它们。

0 投票
1 回答
466 浏览

scrapy - scrapy-splash 不使用 CrawlerSpider 递归爬行

我在我的 CrawlerSpider process_request 中集成了scrapy-splash,规则如下:

问题是爬网仅在第一深度呈现 url,我还想知道即使使用错误的 http 代码或重定向响应,我如何才能获得响应;

提前致谢,

0 投票
3 回答
1369 浏览

javascript - 在 Splash HTTP 渲染服务中动态加载外部 javascript 资源

我目前正在使用Splash HTTP API作为无头浏览器来呈现请求。我将端点render.htmljs_source一起使用 ,它允许在页面完成加载之后和页面呈现之前在页面上下文中评估自定义 Javascript 代码。

我需要对外部资源发出额外的请求,例如在页面加载后加载jQuery

问题是这样做时,对象不会在页面上下文中变得可用。该脚本似乎确实添加到最终呈现的 HTML 源的 HEAD 元素中:

我尝试使用下面描述的两种方法设置回调,以确保在访问任何jQuery方法之前加载脚本。但是在这两种情况下都无法调用回调。

在Chrome的控制台中运行上述脚本可以满足我的要求,并立即使 jQuery 资源在页面上下文中可用。

0 投票
3 回答
6545 浏览

python - 在 python Scrapy 中执行 SplashRequest 时添加等待元素

我正在尝试在 python 中使用 Splash for Scrapy 抓取一些动态网站。但是,我看到 Splash 在某些情况下无法等待完整页面加载。解决此问题的一种蛮力方法是添加大量wait时间(例如,以下代码段中的 5 秒)。但是,这样做效率极低,并且仍然无法加载某些数据(有时加载内容需要超过 5 秒)。是否有某种等待元素条件可以通过这些请求?

0 投票
2 回答
1773 浏览

python - Scrapy:产生表单请求不打印?

我正在写一个蜘蛛来报废网站:

第一个 url www.parenturl.com 调用 parse 函数,从那里我提取了 url www.childurl.com,我有一个回调到 parse2 函数并返回 dict。

问题 1)我需要将 dict 值与其他 7 个值一起存储在 mysql 数据库中,这些值是我在解析函数中从父 url 中提取的?(response_url 不打印)