【发布时间】:2021-10-18 20:54:33
【问题描述】:
我是使用 beautifulsoup 的新手
这是我当前的代码
import requests, json
from bs4 import BeautifulSoup
headers = {'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36'}
s = requests.Session()
res = s.get("https://www.myntra.com/jordan", headers=headers, verify=False)
src = res.content
soup = BeautifulSoup(src, 'lxml')
links = soup.find_all("a")
urls = []
for div in soup.find_all("div", attrs={'id':"mountRoot"}):
print(div)
print("\n")
for div_tag in div.find_all('div'):
print(div_tag)
embedded_div = div_tag.find('div')
print(embedded_div)
这段代码的输出:
<div id="mountRoot" style="min-height:750px;margin-top:-2px">< div class="loader-container">< div class="spinner-spinner">< /div>< /div>< /div>
<div class="loader-container">< div class="spinner-spinner">< /div>< /div>
<div class="spinner-spinner">< /div>
<div class="spinner-spinner">< /div>
这是我正在查看的网站的检查元素 :https://i.stack.imgur.com/zui3R.png
对我来说,它似乎忽略了
我做错了什么?任何帮助都会得到帮助
【问题讨论】:
-
通常当你看到一个带有inspect和beautifulsoup的元素什么都不返回时,这意味着页面被javascript修改了。在您的特定情况下,大部分数据都存储在脚本标签中
-
该页面可能正在由 JavaScript 加载。使用硒。
标签: python-3.x web-scraping beautifulsoup