【问题标题】:Selenium Python: How to get css without targetting a specific class/id/tagSelenium Python:如何在不针对特定类/id/tag 的情况下获取 css
【发布时间】:2019-03-04 14:45:43
【问题描述】:

我正在做一个爬虫项目,其中一个目标是从网站的 HTML 和 CSS 中获取每个图像链接。我使用 BeautifulSoup 和 TinyCSS 来做到这一点,但现在我想在 Selenium 上切换所有内容,因为我可以加载 JS。

我无法在文档中找到一种无需知道标签/id/类即可定位某些 CSS 参数的方法。我可以轻松地从 HTML 中获取图像,但我需要针对 CSS 中的每个“背景图像”参数,以便从中获取 URL。

例如:背景图片:url("paper.gif");

有没有办法做到这一点,或者我应该循环进入每个元素并检查相应的 CSS(这会很耗时)?

【问题讨论】:

  • "从 HTML 和 CSS 中获取每张图片..."从 CSS 中获取图片 是什么意思?你的预期结果是什么?您需要获取图片链接文件吗?
  • 抱歉,我刚刚编辑了问题,我只需要网站上每张图片的链接,而不仅仅是 HTML 标签“img”中的链接

标签: python css selenium web-scraping selenium-chromedriver


【解决方案1】:

您可以抓取所有样式标签并解析它们,搜索您的外观。

您也可以使用资源 URL 下载 css 文件并解析它们。

您还可以创建 XPATH/CSS 规则来搜索包含您要查找的参数的节点。

【讨论】:

  • 下载 css 文件并解析它们,我已经在做,但是处理时间太长了。您能否向我解释一下有关 XPATH/CSS 规则的更多信息,因为我试过了,我认为我需要元素的类/id/名称才能从中获取 CSS。你能告诉我你的第一个选择“抓住所有的风格标签”吗?
猜你喜欢
  • 1970-01-01
  • 2019-07-05
  • 1970-01-01
  • 2020-09-28
  • 1970-01-01
  • 2021-11-16
  • 2014-08-09
  • 2014-01-13
  • 1970-01-01
相关资源
最近更新 更多