亚马逊 Python 网络抓取:产品的所有变体都返回与第一个变体相同的 HTML 代码
Amazon Python Web Scraping: All Variations of Product is Returning Same HTML Code as First Variation
我正在使用 Python2 & 使用 urllib2 的 urlopen 和 bs4 的 BeautifulSoup 来废弃同一产品列表的几个变体的 HTML 代码。
即:https://www.amazon.com/Mouse-Pad-Star-Wars-V4/dp/B00TGGVHOW
因此,当我废弃同一产品列表的所有不同变体时,我从 Var1 收到完全相同的 HTML 代码。
总共有 9 个变体,返回的代码与第一个变体相同。
这很奇怪,因为如果我访问直接链接并检查源代码,我会得到不同的 HTML 但如果它是使用 Python 抓取的,它就会变得相同 HTML.
有人可以看看这个并指导我正确的方向吗?非常感谢!
只是为了补充一些信息,Mr.sytech 提出了一个非常好的观点。但是,并非所有产品都会出现此问题,而只是部分产品会出现此问题。如果我们看一下这个产品:https://www.amazon.com/VicTsing-Wireless-Portable-Receiver-Adjustable/dp/B013WC0P2A 它正在按预期工作,每个变体都会返回自己独特的 HTML。
您不能期望 urllib2 检索到的内容与您在浏览器中看到的内容相同。很有可能,变化的显示是通过 JavaScript 控制的。由于 urllib2 只是检索包含 HTML 的服务器响应,它不会执行 JavaScript 或您的浏览器会执行的任何其他操作。
可能还有其他选项可以使用 urllib 获取数据,但您也可以使用浏览器自动化,例如使用 selenium
可以让您获得执行 JS 后出现的 DOM 和浏览器为您做的所有其他事情。
我正在使用 Python2 & 使用 urllib2 的 urlopen 和 bs4 的 BeautifulSoup 来废弃同一产品列表的几个变体的 HTML 代码。
即:https://www.amazon.com/Mouse-Pad-Star-Wars-V4/dp/B00TGGVHOW
因此,当我废弃同一产品列表的所有不同变体时,我从 Var1 收到完全相同的 HTML 代码。
总共有 9 个变体,返回的代码与第一个变体相同。
这很奇怪,因为如果我访问直接链接并检查源代码,我会得到不同的 HTML 但如果它是使用 Python 抓取的,它就会变得相同 HTML.
有人可以看看这个并指导我正确的方向吗?非常感谢!
只是为了补充一些信息,Mr.sytech 提出了一个非常好的观点。但是,并非所有产品都会出现此问题,而只是部分产品会出现此问题。如果我们看一下这个产品:https://www.amazon.com/VicTsing-Wireless-Portable-Receiver-Adjustable/dp/B013WC0P2A 它正在按预期工作,每个变体都会返回自己独特的 HTML。
您不能期望 urllib2 检索到的内容与您在浏览器中看到的内容相同。很有可能,变化的显示是通过 JavaScript 控制的。由于 urllib2 只是检索包含 HTML 的服务器响应,它不会执行 JavaScript 或您的浏览器会执行的任何其他操作。
可能还有其他选项可以使用 urllib 获取数据,但您也可以使用浏览器自动化,例如使用 selenium
可以让您获得执行 JS 后出现的 DOM 和浏览器为您做的所有其他事情。