Tag: screen scraping

网页抓取,屏幕抓取,数据挖掘技巧?

我正在研究一个项目,我需要做很多屏幕抓取才能尽快获得大量数据。 我想知道是否有人知道任何好的API或资源来帮助我。 顺便说一下,我正在使用java。 这是我的工作流程到目前为止: 连接到网站(使用Apache的HTTPComponents) 网站包含一个部分,其中包含一些我需要访问的链接(使用内置的Java HTML解析器来确定我需要访问的所有链接是什么,这是烦人且杂乱的代码) 访问我找到的所有链接 对于我访问的每个链接,我需要提取更多数据,分布在多个页面上,因此我可能需要访问更多链接 思考: 有没有人知道任何更高级别/更智能的HTML解析器比内置的java解析器? 基本上它是深度优先搜索。 我想我想在某个时候制作这个multithreading,所以我可以并行访问其中的一些链接。 也许我真正想要的是一个multithreading网络爬行库 如果你还没弄明白,这是我第一次搞乱这个问题,所以我很难说清楚我的需求是什么。 我非常感谢任何以前做过此事的人的任何意见。

使用JSOUP登录ConEd网站

我已经广泛阅读了这个和我如何尝试了许多不同的变化,但我无法让它工作。 基本上,我只想登录ConEdison网站并查看我的账单历史记录。 这是我有的: Connection.Response loginForm = Jsoup.connect(“https://apps.coned.com/cemyaccount/NonMemberPages/Login.aspx?lang=eng”) .data(“_LASTFOCUS”,””) .data(“_EVENTTARGET”,””) .data(“_EVENTARGUMENT”,””) .data(“_VIEWSTATE”, viewState) .data(“_EVENTVALIDATION”, eventValidation) .data(“ctl00$Main$Login1$UserName”, username) .data(“ctl00$Main$Login1$Password”, password) .data(“ctl00$Main$Login1$LoginButton”, “Sign In”) .userAgent(“Mozilla/5.0”) .method(Method.POST) .execute(); Map loginCookies = loginForm.cookies(); Document document = Jsoup.connect(“https://apps.coned.com/CEMyAccount/CSOL/BillHistory.aspx?lang=eng”) .cookies(loginCookies) .get(); Elements data = document.select(“table.ctl00_Main_lvBillHistory_Table1”); //checking if it found the right page System.out.println(“document: ” + document); //checking if it found the table […]

努力点击htmlunit内的链接

我在点击htmlunit中的链接时遇到问题。 我浏览了网站上的api(我真的不太了解)并查看了我能找到的所有示例代码,并且仍然遇到点击链接的问题。 这是错误消息的顶部(它非常大,如果你想我可以提交所有) “page2 = link2.click() Exception class=[net.sourceforge.htmlunit.corejs.javascript.JavaScriptException] com.gargoylesoftware.htmlunit.ScriptException: Sys.ArgumentOutOfRangeException: Sys.ArgumentOutOfRangeException: Value must be an integer. Parameter name: x Actual value was Infinity. ” 第一页加载正常但当我点击第二个链接时,我收到此错误(链接是javascript)。 这是我的代码的一部分 page = webclient.getPage(url) anchors1 = page.getAnchors() for anchor in anchors1: if anchor.asText() == “2”: link2 = anchor break page2 = link2.click() 如果我打印链接2我得到: HtmlAnchor[] 起初我想也许HtmlAnchor是一个问题,我不得不删除它,但后来我看了其他示例代码,他们似乎有他们的链接以相同的格式结束,它的工作原理。 如此困惑..请帮助:-) 提前致谢!