在python,BS4上解析数据时获取“无”

时间:2019-07-18 11:16:37

标签: python beautifulsoup

一段时间以来,一直在尝试制作一个可以从网站拆分数据的python程序。我遇到了bs4的python库,并决定将其用于该工作。

问题是我总是得到None的结果,这是我无法理解的东西

我只想获取位于div类中的a @href中的一个单词,为此,我编写了一个类似这样的函数:

def run(self):
    response = requests.get(self.url)
    soup = BeautifulSoup(response.text, 'html.parser')
    finalW = soup.find('a', attrs={'class': 'target'})
    print(finalW)

使用此代码,我希望得到一个单词,但它只会返回None。 我也很可能在此目录的路径上犯了一个错误,所以我在图像上张贴了我想从HTML提取的内容:

enter image description here

1 个答案:

答案 0 :(得分:0)

db.servicesitegroup.find().forEach(function(doc) { doc.startISODate=new Date(doc.starFromTimestamp * 1000); db.servicesitegroup.save(doc); }) 找不到查询时,它返回None。

在您的情况下,html或多或少是这样的。

bs4

... <div class='target'> <a href="somelonglink">neededlink</a> <a href="someotherlink">notneededlink</a> ... </div> ... 因此将无法对查询进行数学运算,因为soup.find('a', attrs={'class': 'target'})中没有attrs。

如果确定您的链接在下面的查询中位于第一位。

a