问题标签 [screen-scraping]

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 投票
1 回答
1706 浏览

.net - 使用 .net 托管代码抓取命令窗口的屏幕

我正在 dot net 中编写一个程序,它将使用框架 2.0 的 Process 对象执行脚本和命令行程序。我希望能够在我的程序中访问进程的屏幕缓冲区。我对此进行了调查,看来我需要访问控制台标准输出和标准错误缓冲区。有人知道这是如何使用托管代码完成的吗?

我想我需要使用附加到任务的 Windows 控制台的 AttachConsole 和 ReadConsoleOutput,以便从控制台屏幕读取字符和属性数据块。我需要做的是托管代码。

请参阅http://msdn.microsoft.com/en-us/library/ms684965(VS.85).aspx

0 投票
3 回答
955 浏览

screen-scraping - 除了正则表达式之外,还有其他方法可以进行屏幕抓取吗?

我正在做一个个人的、只是为了好玩的项目,它使用屏幕抓取来给我一个系统托盘通知,以防 HTML 表上的另一行被添加、修改或删除。

在我想到之前已经这样做了:好吧,让我们使用正则表达式,仅此而已,但是作为一个好奇的人,让我认为可能还有其他东西可以有另一种范式,但使用起来很简单。

我了解 DOM 和 X-Path 以及所有 xml'ish 方法。我正在寻找一些开箱即用的东西,甚至可以在一组规则中定义的东西,这样你就可以制作一个插件系统来聚合各种网站。

0 投票
9 回答
1015 浏览

rss - 将 RSS 添加到任何网站?

是否有任何网站/服务可以让我将 RSS 订阅添加到任何网站?

这是为了我工作的公司。我们有一个显示公司相关新闻的网站。这些新闻由外部机构提供,它们会自动更新到我们的数据库中。我们的网站选择随机/新新闻并显示它们。我们正在考虑在我们的网站上添加“通过 RSS 订阅”按钮。

0 投票
9 回答
25771 浏览

javascript - 什么是支持 Javascript 的屏幕抓取的好工具?

是否有一个很好的测试套件或工具集可以自动化网站导航(支持 Javascript)并从页面收集 HTML?

当然,我可以用 BeautifulSoup 直接抓取 HTML。但这对需要 Javascript 的网站没有好处。:)

0 投票
4 回答
7149 浏览

c# - 使用 C# 阅读和发布到网页

我有一个工作项目,要求我能够在网页中输入信息,阅读我被重定向到的下一页,然后采取进一步的行动。一个简化的现实世界示例类似于访问 google.com,输入“编码技巧”作为搜索条件,然后阅读结果页面。

像http://www.csharp-station.com/HowTo/HttpWebFetch.aspx链接的小编码示例告诉如何阅读网页,但不告诉如何通过将信息提交到表单并继续与它进行交互到下一页。

郑重声明,我不是在构建恶意和/或垃圾邮件相关产品。

那么,我该如何阅读需要先正常浏览几个步骤才能到达的网页呢?

0 投票
6 回答
9600 浏览

html - 在 Ruby 中解析网页的最佳方法是什么?

我一直在 ruby​​forge 上查看 XML 和 HTML 库,以寻找一种从网页中提取数据的简单方法。例如,如果我想在 stackoverflow 上解析用户页面,如何将数据转换为可用格式?

假设我想解析我自己的用户页面以获取我当前的声誉分数和徽章列表。我试图将从我的用户页面检索到的源转换为 xml,但由于缺少 div,转换失败。我知道我可以进行字符串比较并找到我正在寻找的文本,但必须有更好的方法来做到这一点。

我想将其合并到一个简单的脚本中,该脚本在命令行中输出我的用户数据,并可能将其扩展为 GUI 应用程序。

0 投票
9 回答
894 浏览

screen-scraping - 有哪些好的方法可以阻止屏幕抓取工具从我的网站上抓取特定内容?

很确定这个问题对大多数 web 2.0 支持者来说都是亵渎神明,但我确实认为有时你可能希望你的网站的某些部分被轻易地盗取到其他人的任意网络聚合器中。至少足够了,如果他们真的想要的话,他们需要被逼着用手去做。

我的想法是制作一个脚本,通过绝对坐标按照它们在各自段落中正常出现的顺序定位文本节点,然后将这些文本节点以随机、混乱的顺序存储在 DOM 中。当然,让这样的系统正常工作(正确的文本换行、对齐、样式等)似乎几乎类似于从头开始编写我自己的文档渲染器。

我还考虑将它与类似 CAPTCHA 的东西结合起来,以微妙的方式弄乱文本,以阻碍屏幕抓取工具,这些屏幕抓取工具可以简单地查看快照并识别字母或诸如此类的东西。但这可能是多虑了。

唔。有没有人设计出任何好的方法来做这样的事情?

0 投票
9 回答
22307 浏览

screen-scraping - 屏幕刮板如何工作?

我一直听到人们在编写这些程序,我知道他们在做什么,但他们实际上是如何做到的呢?我正在寻找一般概念。

0 投票
4 回答
4842 浏览

screen-scraping - Perl:从经过身份验证的网站中抓取 HTML

虽然从我所看到的情况来看,HTML 抓取有很好的文档记录,并且我理解它的概念和实现,但从隐藏在身份验证表单后面的内容中抓取的最佳方法是什么。我指的是从我合法有权访问的内容中抓取,因此我正在寻找一种自动提交登录数据的方法。

我能想到的只是设置一个代理,从手动登录中捕获吞吐量,然后设置一个脚本来欺骗该吞吐量,作为 HTML 抓取执行的一部分。就语言而言,它可能会在 Perl 中完成。

有没有人有这方面的经验,或者只是一般的想法?

编辑 这已经回答过,但使用.NET。虽然它验证了我认为应该如何完成,但是否有人有 Perl 脚本来执行此操作?

0 投票
9 回答
15109 浏览

php - 是否有与 Perl 的 WWW::Mechanize 等效的 PHP?

我正在寻找一个功能类似于 Perl 的WWW::Mechanize的库,但适用于 PHP。基本上,它应该允许我使用简单的语法提交 HTTP GET 和 POST 请求,然后解析结果页面并以简单的格式返回所有表单及其字段,以及页面上的所有链接。

我知道 CURL,但它有点太简单了,而且语法很丑(大量的curl_foo($curl_handle, ...)语句

澄清:

我想要比目前的答案更高级的东西。例如,在 Perl 中,您可以执行以下操作:

要使用 HTTP_Client 或 wget 或 CURL 做同样的事情会做很多工作,我必须手动解析页面以查找链接、查找表单 URL、提取所有隐藏字段等等。我要求使用 PHP 解决方案的原因是我没有使用 Perl 的经验,我可能会通过大量工作来构建我需要的东西,但如果我能在 PHP 中完成上述操作会快得多。