BeautifulSoup - Python - 从 HTML 中找到密钥

BeautifulSoup - Python - Find the key from HTML

我一直在用bs4和Python练习,现在我被卡住了。

我的计划是做一个 If - Else 状态,我想做类似的事情

If(I find a value inside this html)
   Do This method
Else: 
   Do something else

我已经收集了一个 html 我随机发现的看起来像 -

<div class="Talkinghand" data-backing="ShowingHide" data-key="123456" data-theme="$MemeTheme" style=""></div>

到目前为止我所做的是:

s = requests.Session()
    Url = 'www.myhtml.com' #Just took a random page which I don't feel to insert
    r = s.get(Url)
    soup = soup(r, "lxml")
    findKey = soup.find(('div', {'class': 'Talkinghand'})['data-key'])
    print(findKey)

但运气不好。给我错误和

TypeError: object of type 'Response' has no len()

一旦我找到或打印出密钥。我想做一个 if else 语句,它还说:

If(该数据键中有一个值) ...

要显示 <div> 标签内的 data-key 属性,您可以执行以下操作:

from bs4 import BeautifulSoup

html = '<div class="Talkinghand" data-backing="ShowingHide" data-key="123456" data-theme="$MemeTheme" style=""></div>'
soup = BeautifulSoup(html, "html.parser")

print soup.div['data-key']

这将打印:

123456    

您需要将 r.content 传递给您的 soup 电话。

您的脚本有一个额外的 (),因此以下内容也有效:

findKey = soup.find('div', {'class': 'Talkinghand'})['data-key']
print findKey