gpt4 book ai didi

javascript - Facebook 是否知道我正在使用 PhantomJS 抓取它,并且它可以更改其网站来对抗我吗?

转载 作者:行者123 更新时间:2023-12-01 02:38:47 24 4
gpt4 key购买 nike

所以,也许我有点偏执。

我正在使用 PhantomJS 为一个爱好项目抓取我的 Facebook 时间线。基本上,我编写了一个程序,通过在 phantom 的 page.evaluate block 内使用 XPATH 查询页面中的文本 Sponsored 来查找所有广告。文本显示为 html a 元素的innerHTML。

这几天一切运行良好,并且发现了大量广告。

然后它停止返回任何结果。

当我手动登录 Facebook 再次检查元素时,我发现 Sponsored 一词现在出现在页面上的 ::after 伪类元素中,其中包含css 属性内容:赞助。这意味着文本的 XPATH 查询不再产生任何结果。不是开玩笑,Facebook 在被抓取几天后似乎改变了这个词的呈现方式。

偏执。我告诉你了。

因此,我向 Javascript、Web-Scraping 和 PhantomJS 开发人员社区提出这个问题。到底他妈发生了什么。 Facebook 能否知道我的 PhantomJS 程序在 page.evaluate block 内正在做什么?

如果是这样,怎么办?例如,我的虚拟命令会出现在嵌入页面的键盘记录程序中吗?

你的一些理论是什么?

最佳答案

即使用户代理被欺骗,也完全有可能检测到 PhantomJS。它与其他浏览器有很多不同之处,其中包括:

  • 标题顺序错误
  • 缺乏媒体插件和最新的 JS 功能
  • PhantomJS 特定方法,例如 window.callPhantom
  • 堆栈跟踪中的 PhantomJS 名称

还有很多其他的。

请参阅此处链接的这篇优秀文章和演示文稿以了解详细信息:https://blog.shapesecurity.com/2015/01/22/detecting-phantomjs-based-visitors/

也许puppeteer将更适合您的需求,因为它基于真正的尖端 Chromium 浏览器。

关于javascript - Facebook 是否知道我正在使用 PhantomJS 抓取它,并且它可以更改其网站来对抗我吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47708260/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com