使用Scrapy和BeautifulSoup进行网页抓取

时间:2018-07-09 09:43:17

标签: python beautifulsoup scrapy

<h2 class="result-item-name" data-nid="117" data-localisation="25.88872, -80.12488">
  Bal Harbour    </h2>

大家好,我正在尝试收集“ data-nid”和“ data-localisation”,但是当我编写代码时:

'geocoordinates':['class','result-item-name','data-localisation']

我总是收到None答复。

你们能帮我吗?我是BeautifulSoup的新手,对此我感到不舒服。

非常感谢您!

2 个答案:

答案 0 :(得分:0)

BeautifulSoup中,您可以使用键值访问属性。就像字典一样

例如:

from bs4 import BeautifulSoup
html = """<h2 class="result-item-name" data-nid="117" data-localisation="25.88872, -80.12488">Bal Harbour    </h2>"""

soup = BeautifulSoup(html, "html.parser")
h2 = soup.find("h2", class_= "result-item-name")
print(h2["data-nid"])
print(h2["data-localisation"])

输出:

117
25.88872, -80.12488

答案 1 :(得分:0)

from bs4 import BeautifulSoup

html = """
<h2 class="result-item-name" data-nid="117" data-localisation="25.88872, -80.12488">
Bal Harbour
</h2>
"""
soup = BeautifulSoup(html, 'html.parser')

h2 = soup.find('h2', {'class': 'result-item-name'})
print(h2['data-nid'])
print(h2['data-localisation'])

输出

117
25.88872, -80.12488
相关问题