我在python web抓取中遇到错误

我在python web抓取中遇到错误,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我为4个属性编写了一个代码来刮取数据,但我只从第一个字段“title”获取数据,其他3个字段返回空结果。谁能告诉我如何解决这个问题。谢谢 这是我的密码: import requests from bs4 import BeautifulSoup #import pandas as pd import csv def get_page(url): response = requests.get(url) if not response.ok: print('se

我为4个属性编写了一个代码来刮取数据,但我只从第一个字段“title”获取数据,其他3个字段返回空结果。谁能告诉我如何解决这个问题。谢谢 这是我的密码:

import requests
from bs4 import BeautifulSoup
#import pandas as pd
import csv

def get_page(url):
    response = requests.get(url)

    if not response.ok:
        print('server responded:', response.status_code)
    else:
        soup = BeautifulSoup(response.text, 'html.parser') # 1. html , 2. parser
    return soup

def get_detail_data(soup):

    try:
        title = soup.find('span',class_="text-info h4",id=False).find('strong').text
    except:
        title = 'empty'  
    print(title)
    try:
        add = soup.find('div',class_="col-xs-12 col-sm-4",id=False).find('strong')
    except:
        add = 'empty add'  
    print(add)  
    try:
        phone = soup.find('div',class_="col-xs-12 col-sm-4",id=False).text
    except:
        phone = 'empty phone'  
    print(phone)


def main():
    url = "https://www.dobsearch.com/people-finder/view.php?searchnum=287404084791&sessid=vusqgp50pm8r38lfe13la8ta1l"
    get_detail_data(get_page(url))
if __name__ == '__main__':
    main()

对于第二个类,您将给出一个在您想要的类之前出现的类,因此您需要更改该类或查看多个发现。第三次也是这样。这类类类(col-xs-12)是一些引导类,它们是常用的类,因此一般来说,它们不适合用于查找(或者您应该进行更复杂的查找)。正如我所看到的,这个站点没有太多独特的类,所以我认为您应该使用多个find方法来获得您想要的。我可以说的另一件事是不要使用try…除非你知道你从该部分得到了什么。

你能声明你正在尝试处理网站的哪些部分吗?我只需要主标题(人名年龄(64))、主地址和主电话号码。所有这些信息都在每个记录的顶部。其他记录和电话号码不,我不需要,我只需要每个列表最上面一行的主要信息。谢谢谢谢你的建议,但是兄弟,我应该用哪种方法来收集数据呢?