有一个网页在加载时会使用随机展示的表单/控件/ Google广告。然而,这个集合是关闭的 - 从我的测试中至少有三种可能的变化,其中两种非常常见,第三种非常罕见。
我希望能够根据每个变体对此网页进行分类。我尝试分析每个变体的html源代码,但根据Python字符串equals和Python difflib,所有变体的html完全相同。似乎没有任何信息指明谷歌广告或控件的放置位置。
例如,考虑一个带有两个盒子的图片,一个红色的盒子(称为盒子A)和一个蓝色的盒子(称之为盒子B)。盒子本身永远不会改变位置,但取决于他们的位置。
现在考虑两种可能的变体,每次加载/打开网页时都会选择其中一种变体。
变化1:假设50%的时间,谷歌广告位于方框A(红色的),网站控制因此放在方框B(蓝色方框)。
变化2:假设50%的时间,谷歌广告位于方框B(蓝色方位),因此网站控制位于方框A(红色方框)。
因此,如果我加载网页,我该如何根据其变化对其进行分类?
答案 0 :(得分:0)
如果HTML每次都是相同的,那么可能是使用javascript在客户端进行变化。
答案取决于“分类”的含义。如果您只是想知道,在页面的任何给定负载上,小部件的位置,您可能必须使用Selenium之类的东西,它实际上在浏览器中打开页面并运行javascript,而不是仅仅获取HTML源代码。然后,您将需要使用Selenium来评估一些检测窗口小部件位置的JavaScript。 python有一个selenium
模块,使用起来相当简单。考虑将它连接到PhantomJS,这样你就不必拥有浏览器窗口了。