簡體   English   中英

使用美麗的湯進行網頁抓取,提供多種結果

[英]Webscraping using beautiful soup giving multiple results

我正在抓取 [this][1] 頁面並想要代理的手機號碼。

我正在使用這個腳本

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

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

但它多次給出電話號碼。 我不知道為什么。 如何將其限制為僅一個電話號碼? [1]: http : //dubai.dubizzle.com/property-for-rent/residential/apartmentflat/2014/2/2/do-you-want-to-live-in-amazing-views-of-bu- 2-3/?back=ZHViYWkuZHViaXp6bGUuY29tL3Byb3BlcnR5LWZvci1yZW50L3Jlc2lkZW50aWFsL2FwYXJ0bWVudGZsYXQv&pos=1

您正在抓取的頁面有兩個類為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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM