仅获取标记名,而不使用python beautifulsoup获取文本

仅获取标记名,而不使用python beautifulsoup获取文本,python,beautifulsoup,Python,Beautifulsoup,下面是我的代码 from bs4 import BeautifulSoup import requests headers = {"User-Agents":"googleBoat"} r = requests.get('https://www.iiaonline.in/memberdetail.aspx?memid=11520',headers=headers) soup = BeautifulSoup(r.text,'lxml') company_name = soup.find('spa

下面是我的代码

from bs4 import BeautifulSoup
import requests
headers = {"User-Agents":"googleBoat"}
r = requests.get('https://www.iiaonline.in/memberdetail.aspx?memid=11520',headers=headers)
soup = BeautifulSoup(r.text,'lxml')

company_name = soup.find('span',{"id":"unit"})
print(company_name.text)
请帮我找个人

页面是动态的

选项1:

print(company_name.text)
Anagram Development & Farmer Producer Co. Ltd.
'<time>25</time>'
使用

输出:

print(company_name.text)
Anagram Development & Farmer Producer Co. Ltd.
'<time>25</time>'
选项2:

print(company_name.text)
Anagram Development & Farmer Producer Co. Ltd.
'<time>25</time>'
使用软件包 它似乎可以抓取一些由JavaScript呈现的文本,但我从未使用过它,因为它与我经常使用的jupyter笔记本和Spyder相冲突,所以我会出错(过去我对使用Selenium很在行)。因此,您可以自己尝试,但下面是一个来自文档的示例

from requests_html import HTMLSession
session = HTMLSession()

r = session.get('http://python-requests.org/')

r.html.render()

r.html.search('Python 2 will retire in only {months} months!')['months']
输出:

print(company_name.text)
Anagram Development & Farmer Producer Co. Ltd.
'<time>25</time>'
'25'

只有id:unit的跨距为空。您好,欢迎使用SO。对于“为什么该代码不起作用”类型的问题,您应该发布一个最小的、完整的、可验证的示例(cf)-在这种情况下,它应该包含
r.text
-的内容,或者至少包含一个复制该问题的摘要版本。这样做,您可能会发现
r.text
中标记的相关部分确实是空的,问题的原因是页面使用js加载内容。