如何检测正在使用的电子商务软件
How to detect which ecommerce software is being used
我正在用 C# 制作一个需要查找网上商店的网络爬虫。我遇到的问题是我需要检测网页是否是网上商店。如果是,我需要找出它使用的是什么类型的电子商务软件。但问题是我不知道你如何在源代码中检测到它。
我还有一个名为 builtwith 的 Chrome 插件,它可以检测各种软件。但是我还没有弄清楚他们是怎么做到的。
如果有人能帮我解决这个问题就好了
在给你一个实际的答案之前,值得注意的是你提出的建议可能违反了许多网站的使用条款。您应该花时间调查您自己和您的组织可能要承担的法律责任。
这将是一项非常耗时的工作,但并不困难。您的爬虫只需要简单地使用基于规则的方法来检测页面有效负载中的签名。
- 找到您要检测的特定软件。
- 找到 2-3 个肯定在使用该软件的网站。
- 查看 HTML 负载以查看它们具有哪些在站点中通用的脚本、CSS 和 HTML 模式。
- 建立一个基于代码的规则,可以一致地检测这些模式。例如:
if (html.Contains("widgetName")) isPlatformName = true;
- 在您确定使用该软件的更多网站上测试模式。
- 为每个软件供应商重复。
当目标有多个版本并且您需要调整规则以了解和了解各种版本时,或者当平台非常相似时,情况会更加复杂。
我认为其中最复杂的部分是拥有一个经过深思熟虑的机器人问题检测、报告和节流架构。您可能应该花大部分时间来计划。
就是这样。
有几种不同的方法可以确定网站使用的技术。首先,如果您精通技术,可以右键单击电子商务页面(目录、结帐页面等)并查看源代码。许多平台都会在源代码中提供提示,让您了解该网站是什么 运行.
您还可以查看 DNS/hosting 信息,这将帮助您确定电子商务解决方案是托管的还是 SaaS(例如 Shopify)。
您也可以尝试使用InterNIC并输入域名。结果将 return 可以为您指明正确方向的名称服务器。
最后,如果所有的侦查工作似乎都太难了,还有一个更简单的方法!试试 BuiltWith。它通常非常可靠,只要您查找的系统不是 custom/proprietary。在 BuiltWith 中输入域,它将向您显示平台、使用的小部件、分析和跟踪代码、CDN、CMS、支付处理器等。
我正在用 C# 制作一个需要查找网上商店的网络爬虫。我遇到的问题是我需要检测网页是否是网上商店。如果是,我需要找出它使用的是什么类型的电子商务软件。但问题是我不知道你如何在源代码中检测到它。
我还有一个名为 builtwith 的 Chrome 插件,它可以检测各种软件。但是我还没有弄清楚他们是怎么做到的。
如果有人能帮我解决这个问题就好了
在给你一个实际的答案之前,值得注意的是你提出的建议可能违反了许多网站的使用条款。您应该花时间调查您自己和您的组织可能要承担的法律责任。
这将是一项非常耗时的工作,但并不困难。您的爬虫只需要简单地使用基于规则的方法来检测页面有效负载中的签名。
- 找到您要检测的特定软件。
- 找到 2-3 个肯定在使用该软件的网站。
- 查看 HTML 负载以查看它们具有哪些在站点中通用的脚本、CSS 和 HTML 模式。
- 建立一个基于代码的规则,可以一致地检测这些模式。例如:
if (html.Contains("widgetName")) isPlatformName = true;
- 在您确定使用该软件的更多网站上测试模式。
- 为每个软件供应商重复。
当目标有多个版本并且您需要调整规则以了解和了解各种版本时,或者当平台非常相似时,情况会更加复杂。
我认为其中最复杂的部分是拥有一个经过深思熟虑的机器人问题检测、报告和节流架构。您可能应该花大部分时间来计划。
就是这样。
有几种不同的方法可以确定网站使用的技术。首先,如果您精通技术,可以右键单击电子商务页面(目录、结帐页面等)并查看源代码。许多平台都会在源代码中提供提示,让您了解该网站是什么 运行.
您还可以查看 DNS/hosting 信息,这将帮助您确定电子商务解决方案是托管的还是 SaaS(例如 Shopify)。
您也可以尝试使用InterNIC并输入域名。结果将 return 可以为您指明正确方向的名称服务器。
最后,如果所有的侦查工作似乎都太难了,还有一个更简单的方法!试试 BuiltWith。它通常非常可靠,只要您查找的系统不是 custom/proprietary。在 BuiltWith 中输入域,它将向您显示平台、使用的小部件、分析和跟踪代码、CDN、CMS、支付处理器等。