我試圖建立一個程序來爲公司管理團隊刮網。這是非常準確的,在獲得很多事情,包括:個人網頁抓取描述
-names
-job冠軍
-images
-emails
-Qualifications(博士,ECT)和後綴(二,三,JR。)
我遇到的問題是刮人的描述。例如在Facebook的Executive Bios頁面上,我希望馬克扎克伯格的描述。但是,由於HTML結構有所不同,要以近乎100%的準確度來完成這一點非常困難。
我使用Perl和許多,我相信是先進的,正則表達式。有沒有更好的方法/工具來解決這個問題?
我最近的一次嘗試是在頁面上找到最後一次出現的人的全名,然後取所有文字,直到我找到同事的名字。雖然這看起來可能會起作用,但它給我的結果並不理想。
編輯:我意識到這個問題,因爲只是試圖解析這個特定的頁面,我需要的是一般足以在任何公司「人物頁面」上工作的東西。我知道100%的準確性是無法實現的,尋找一些能讓我達到50%的東西,因爲目前我下降了15-20%左右。
實際上,該頁面使用任何HTML解析器都是微不足道的。所有信息都包含在具有不同類名的元素中。當然,使用正則表達式來解析HTML通常是一個容易出錯和令人沮喪的任務。所以,使用一個HTML解析器。 – 2010-11-19 14:17:26
http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454 – 2010-11-19 15:22:48
是的這個頁面是微不足道的同意,我需要的東西是足夠一般在任何頁面上工作(或至少50-60%)。我只是抓住了Facebook頁面來展示我要去的內容的一個例子。 – user387049 2010-11-19 17:47:52