使用JSOUP从网页检索有用的信息

棘皮炎

我如何从JAVA页面的“页脚”部分中的任何网页中检索“与我们联系”链接。

例如,找到页脚元素,或具有id =“ footer”或具有页脚类的元素?

我曾尝试使用JSOUP检索网页中的所有链接,然后.*contact.*在其中运行regex 但是我不能100%确定从这种方法获取的链接是网站的“与我们联系”页面。

第2季

还有其他健壮的方法吗?或者我可以同时使用页脚链接和已经完成的方法来推断某个页面是否一定是与我们联系的页面?

史蒂芬(Stephan)

但是我不能100%确定所获取的链接...

短答案

您将永远无法确定。


长答案

对于给定的随机HTML页面,您想找到“联系我们”链接。这种工作对人类来说是微不足道的。对于计算机来说,这是一个巨大的挑战。

在您的情况下,我可以看到一些选择:

选项1:众包

  • 获取您想要的“联系我们”信息的所有网站网址
  • 将他们发送到人群服务平台,要求真实的人为您查找信息(Rapidworkers.com,Crowdsource.com,Clickworker.com,Amazon Mechanical Turk,microworkers.com)

检查平台是否提供API。

+ work done by human
+ dynamically adapt to unknown pattern
- cost money
- We suck at repetitive tasks

选项2: IA(专利检索)

  • 训练IA以提取信息
  • 然后通过它您的网站

看一下WekaJava-ML

+ Automated task
+ Can perform a repetitive task long time
- May take time to built a robust solution
- Risk of false positive or complete miss

选项3:使用Jsoup

  • 仔细研究您所定位的网站的模式
  • 告诉Jsoup查找您检测到的模式

此选项是一个永无止境的任务。您必须始终为Jsoup提供新的模式。我建议您使用一个监视系统来告诉您网站何时逃脱了任何已知的模式。

+ Automated task
+ Can perform a repetitive task long time
- Take time for studying, discovering, adding new patterns
- Risk of false positive or complete miss

选项4:以上三个选项的混合

您可以在目标网站上使用这三个选项。

+ Reduce chances of false positive or complete misses
+ More confident final result
- Take time for studying, discovering, adding new patterns
- Cost money

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Java中检索有用的系统信息?

GPS 模块未显示使用 Arduino 的有用信息

合并两个csv文件并使用python提取有用的信息

在类方法中使用Write-Error不会产生有用的信息| 电源外壳

数据库统计信息有多有用

如何使用其ID值检索网页上的某些信息?

从Python中的网页检索信息?

如何使用jsoup用js解析android中的网页内容

在 R 中读取日志文件以提取有用信息

PyCharm:显示有用信息作为终端名称

有用的IMAP标头信息未显示

如何从 console.log() 获取有用的信息

使用Google Apps Provisioning API检索所有用户?

我可以从这样的崩溃信息中获取有用的信息吗?

检索与Crashlytics问题相关的所有用户标识符信息

使用Net :: LDAP获取所有用户信息

如何在会话中使用所有用户信息

什么时候使用枚举有用,为什么有用?

Smart Home API错误消息是否应该使Alexa用更有用的信息进行响应?

tf.keras中的MobileNetV2。链接很多,但没有有用的信息

如何从 GADT / 存在类型的有效负载中提取有用信息?

ouchdb angularJS http服务回调错误响应没有有用的信息

使用HTTP协议从网页中检索信息时出现问题

如果我使用SharedPreferences,使用onSaveInstantState是否有用?

如何从.csv文件中检索没有用定界符分隔的单个值?

简单的检索和赋值获取器和设置器在JavaScript中有用吗?

Aerospike:zlib / bz2存储和检索没有用

Spring WebFlux:POST路由ServerRequest对象不包含任何正文或任何有用的信息

将有用的状态信息传递给Java中的异常的好方法是什么?