【发布时间】:2020-09-15 23:29:00
【问题描述】:
我正在尝试学习如何通过 python 脚本从 Internet 获取信息。这里是:
import requests
from bs4 import BeautifulSoup
url = 'https://www.amazon.es/Poco-NFC-Smartphone-Punch-Hole-Quad-c%C3%A1mara/dp/B08B9C149J/ref=sr_1_3?__mk_es_ES=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=poco%2Bx3&qid=1600179415&quartzVehicle=16-179&replacementKeywords=poco&sr=8-3&th=1'
headers ={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36'}
page = requests.get(url, headers=headers)
soup = BeautifulSoup(page.content, "html.parser")
title = soup.find( id='productTitle').get_text()
问题是当我应该得到我在浏览器中看到的标题时,由于 ID 'productTitle' 搜索,我没有得到任何结果。
有什么想法吗?
【问题讨论】:
-
当您在浏览器中加载页面时,浏览器将执行 JavaScript 资源,这些资源可能会通过向 DOM 添加元素来操作页面。
requests和BeautifulSoup都不会执行这段 JavaScript 代码。 -
是的,但我看到人们使用相同的代码可以获得我想要的信息。
-
你在哪里看到这个代码?
-
youtube.com/watch?v=Bg9r_yLk7VY&t=2s@Code-Apprentice
标签: python beautifulsoup