使用beautifulsoup的Web Scraping提供多种结果

时间:2014-02-02 18:27:18

标签: python beautifulsoup

我正在废弃this页面并想要代理的手机号码。

我正在使用此脚本

# phone num
        phonenum=soup.select(".phone-content")

        for a in phonenum:
            print a.text.strip().encode("utf-8")

但它会多次给出电话号码。我不知道为什么。我怎样才能将其限制为一个电话号码?

1 个答案:

答案 0 :(得分:0)

您正在抓取的页面包含两个类phone-content的元素。这就是为什么你得到两个电话号码。您可以将更具体的CSS选择器传递给.select方法:

phonenum=soup.select("#listing-reply-controls .phone-content")

作为替代方案,您可以删除重复的电话号码:

phonenum=soup.select(".phone-content")
# set comprehension will remove the duplicate phone numbers
unique_phonenum = {p.text.strip().encode("utf-8") for p in phonenum}

for a in unique_phonenum:
    print a