logging - 我可以区分“scraper”和休闲浏览器吗?
问题描述
数据会不会有差异
- 正常页面查看
- 刮刀工具
- 手动保存页面上的图像(右键保存)
背景:一个竞争对手决定逐个像素地窃取我的整个单页网站。通过在我的谷歌分析中看到超过 25,000 次点击进入我从未创建过的页面,我得知了这一点。
我熟悉网站开膛手复印机/httools/等工具,当然也知道他们可以右键单击并保存所有图像并复制粘贴代码,但我希望这些人粗心并在日志中留下痕迹。
我使用 bluehost vps 并有一个 cpanel。这是一个基本的 html css 网站。
也许如果它来自特定的复印机工具,我可以看到?或者也许我可以看到在页面视图中加载的图像和通过右键单击下载的图像之间的区别?
感谢您阅读本文!
解决方案
User-Agent字符串通常由运行良好的浏览器发送,您可能还会注意到 Google(或冒充他们的人)会发送如下内容:
Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
恶意软件总是可以通过简单地发送与例如 Firefox 相同的字符串来模仿某些合法浏览器。
我所知道的所有浏览器都会发送相同的用户代理,无论您是否右键单击并在链接上“另存为”——类似图像的东西已经存在于浏览器的缓存中,我想甚至不会触发第二个请求页面加载。
您可能会发现自己很幸运,并且发现有人使用具有独特用户代理的工具,这将使其与其他流量区分开来 - 如果失败了,我认为如果“小偷”使用一台计算机和一个互联网连接,您可能会看到来自日志文件中单个 IP 地址的大量连接……来自一个 IP(或同一区域中的一组 IP?,寻找一个 GeoIP 数据库以进行关联)的快速触发请求,所有这些都在很短的时间内完成。
推荐阅读
- php - 使用 PHP 将 JSON 转换为 HTML 表或 div
- android - 两个 ArrayList 比较和更新一个 Arraylist 还是在 android 中覆盖?
- javascript - 如何检查对象是否包含 JavaScript 数组中的文本?
- python-3.x - Pandas 系列重采样 + 插值给出 NaN
- visual-studio-code - GNU G++ 在包含 D3D12 包含路径后停止编译(使用 VSCode)
- reflection - 获取类属性
- python - 从 Python Flask 中的表单将数据插入 Oracle 数据库
- ajax - SSE 在 AJAX 运行时保持挂起
- gridview - 从数据源填充 Telerik gridview 下的 asp 下拉列表
- r - 为每次迭代调用新数据框:循环遍历数据框?