我的目标是从页面源获取“ sitekey”的值。该代码段为here。有问题的页面是this
现在,做
soup = BeautifulSoup(url,'html.parser')
soup.find('div',{"class":"field field--required"})
不起作用,因为存在多个具有相同类名的div标签。我该如何解决这个问题?
先感谢您。
编辑:
def sitekey_search(atc_link):
response = session.get(atc_link)
soup = BeautifulSoup(response.content, 'html.parser')
sitekey = soup.select("div script")[0]
print(sitekey)
m = re.match("""\"(\w+)\"""", sitekey)
if m:
print(m.groups())
最佳答案
soup = BeautifulSoup(a,'lxml')
sitekey = soup.select("div script")[0]
b = sitekey.text
print(re.findall(r'"([^"]*)"', b))
这应该可以完成工作,变量a [第一行]是输入(html),
b只是脚本部分,正则表达式会打印引号之间的所有内容(在这种情况下为键),如果要从键或
.strip("'")
中删除引号,则可以另外使用replace("'","")
关于python - BeautifulSoup在标签内的代码段内找到键值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43575022/