python - Requests-HTML 抓取标签图片 url (Requests-HTML, python)
问题描述
这是我的代码
from requests_html import HTMLSession
session = HTMLSession()
r = session.get('https://au.pcpartpicker.com/product/jLF48d')
about = r.html.find('.item')
print(about)
这打印
元素 'a' class=('item',) onclick='show_gallery(0, carousel_images);return false;'
但是,当我将打印语句更改为:
print(about.absolute_links)
我收到以下错误:
AttributeError:“列表”对象没有属性“绝对链接”
知道为什么会发生这种情况以及我该如何解决?
如果您需要更多信息,请告诉我。
谢谢
解决方案
r.html.find('.item')
返回一个列表并且列表没有属性absolute_links
。由于可能不仅可以找到一个节点.item
,因此find()
方法会按预期为您提供一个列表。
获得单个节点将很方便
about = r.html.find('.item')[0]
但是,这不会为您提供 img 链接about.absolute_links
,因为此处找到的元素是 of <a>
,而不是<img>
about = r.html.find('.item')[0]
img = about.xpath('//img')[0]
img.attrs['src'] # => '//cdn.pcpartpicker.com/static/forever/images/product/55aea2dd64e2e3a3e3b1d678048d8d76.256p.jpg'
推荐阅读
- javascript - 用 Javascript 编写的 Rails 工作者?
- ssis - 在 SQL Server 代理 T-SQL 作业步骤中选择哪个“运行方式”
- opencv - Opencv ONNX 支持
- swift - 如何移动字符串的范围?
- angularjs - 如何更改边框颜色,仅在未选中和必需的情况下?angularJS,选择选中
- amazon-web-services - 实时收集大量事件时的 AWS firehose 或类似架构建议
- java - Admob 仅显示在 XML 之上
- embedded - 为什么在为 K64F mbed 板运行 pyocd list 时出现错误“没有连接可用的调试探针”?
- anylogic - 不允许叉车通过网络中的节点
- javascript - 是否可以修改如何在网络浏览器上退出全屏视频?