【问题标题】:text inside div element not being printed out with Beautifulsoup and requestsdiv 元素内的文本没有被 Beautifulsoup 和请求打印出来
【发布时间】:2020-09-02 18:51:38
【问题描述】:

我正在尝试编写脚本来抓取 ebay 列表,但我遇到了抓取描述并将其存储在变量中的问题。这只是我的代码的相关部分:

import requests
from bs4 import BeautifulSoup

item = '293716122560'
url = 'https://www.ebay.co.uk/itm/' + item
result = requests.get(url)
soup = BeautifulSoup(result.text, 'lxml')

description = soup.find(id="ds_div")
print(description)

但是,我的输出是这样的:

None

如您所见,不是很有用。我已经尝试解决这个问题很久了,但我认为这与 html 的结构有关。任何人都可以做一些测试并帮我一把,将不胜感激。谢谢

【问题讨论】:

  • 你的网址中没有ds_div标签,所以没有找到...
  • 有当我检查代码时
  • 自己试试,去URL,进入inspect元素,然后点击描述
  • 我试过了,没找到.....
  • 你有什么不和谐的地方可以谈谈吗,我可以在隐身 chrome 窗口上清楚地看到它

标签: python python-3.x web-scraping beautifulsoup python-requests


【解决方案1】:

看起来该元素是用 JavaScript 渲染的,所以请求不会看到它。您可以使用 Selenium 而不是请求来获取它:https://selenium-python.readthedocs.io/。

【讨论】:

  • 我想通了,它在 iframe 中
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多