【问题标题】:Using python to search HTML like google使用 python 像 google 一样搜索 HTML
【发布时间】:2021-09-22 17:15:31
【问题描述】:

我在这里有 2 个 URL,当我使用 google inspect 元素搜索 html 时,它的工作方式与我预期的一样。

https://www.target.com/p/dualsense-wireless-controller-for-playstation-5/-/A-83377785?preselect=81114477#lnk=sametab 上面的链接使用 Inspect + CTRL F 使用“Get it by”字样

https://www.target.com/p/2020-panini-nascar-prizm-racing-trading-card-blaster-box/-/A-80884690#lnk=sametab 上面的链接没有字

我想要一种在 python 中搜索的方法,如果 URL 包含“Get it by”字样,但每当我这样做时,它都说 HTML 中没有“Get it by”。然后我打印了 HTML 并将其与检查元素显示的内容进行了比较,结果完全不同。如何获得检查元素显示的相同脚本?

targetsubstring = 'Get it by'
my_request = urllib.request.urlopen("https://www.target.com/p/dualsense-wireless-controller-for-playstation-5/-/A-83377785?preselect=81114477#lnk=sametab")
my_HTML = my_request.read().decode("utf8")
print(my_HTML)
if targetsubstring in my_HTML:
    print('in stock')
else:
    print('oos')

Out of stock product

In stock product

此脚本的主要目标是,如果产品有货,则能够检查来自目标的 URL 链接。

【问题讨论】:

  • 似乎您需要使用无头浏览器来获取 URL,例如通过 Selenium,它将执行所有 JavaScript 等,这与您直接从 URL 中获取 HTML 不同。您是否研究过任何标准的浏览器自动化工具,包括 Selenium?此外,我认为在您的标题中包含“我将为解决方案付费”会使这篇文章被否决或关闭,这不是标准做法,这就是为什么该网站有一个赏金系统。
  • 看看BeautifulSoup - 它很容易上手,并且可以为您完成大部分繁重的工作。
  • 这里还是个菜鸟。谢谢你让我知道,会改变的。我已经研究了一些硒,还得研究更多。谢谢!

标签: python google-chrome web-inspector


【解决方案1】:

项目的可用性由 JavaScript 呈现。在抓取之前,您必须等待加载 JavaScript。一个更好的主意是这个dryscrape,它更容易使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多