招標公告採集
本文介紹使用八爪魚採集招標網站(全國公共資源交易平台(廣東省)
為例)的方法
示例網站:
http://www.gdggzy.org.cn/prip-portal-web/main/Index.do?typeId=30011&city=gd&businessType=3001
示例網站說明:
全國公共資源交易平台(廣東省)
說明:該網站有多個項目,每個項目下還有多個省市劃分,此次打算採集政府採購項目的招標公告。
使用功能點:
創建循環翻頁
Ajax點擊
修改Xpath
切換循環下拉列表
步驟1:創建採集任務
1)進入主界面,選擇「自定義採集」
2)將要採集的網站URL複製粘貼到輸入框中,點擊「保存網址」
點擊右上角的流程,讓你的採集流程清晰可見。
步驟2:創建鏈接循環
1)滑鼠點擊一下第一個地址,選擇右側選項框中的選中全部,接著選擇「循環點擊每個鏈接」,對地址的循環就做好了
2)然後隨便點擊循環中選項測試一下是否可以選中,發現了問題,手動執行,選擇列表中的任何一個地名,再返回循環中查看時,第一個「省本級」都會變成剛才選擇的地名
檢查循環元素列表後,發現是定位問題,所以把第一個元素列表修改成
//DIV[@class=m]/TABLE[1]/TBODY[1]/TR[1]/TD[1]/UL[1]/LI[1]/A[1],點擊確定,再點擊循環列表就不會變化了
3)由於點擊地址變化,網址不變,是ajax頁面,因此對點擊元素的高級選項設置「ajax載入」,載入2s
步驟3:循環切換下拉列表
1)頁面最下方有個選擇公告數量的下拉框,可對顯示數量做選擇。點擊下拉框,點擊右側「循環切換下拉列表選項」,左上方[流程]中會顯示出一個下拉框循環
假如只想選擇下拉框中的最大數100,所以把不固定元素列表修改為單個元素的循環方式,先在火狐瀏覽器中定位到100數量的位置,然後點擊單個元素,在單個元素列表框中修改xpath為:.//*[@id=TestView_pageableDiv]/div[1]/select/option[5],點擊保存,循環列表中就只剩100數量了
步驟4:設置翻頁循環
1)點擊表示為「下一頁」的按鈕,在提示框中選擇「循環點擊單個鏈接」,翻頁循環就在左上角[流程]中顯示出來了
2)由於該頁面是ajax載入頁面,所以還需在「點擊翻頁」的高級選項中設置「ajax載入」,超時2秒,點擊「確定」
3)檢查下目前規則步驟有無做錯。換了循環中的市區地址,向下依次點擊,到翻頁步驟時發現其他的地址在翻頁上有的沒有翻頁按鈕,有的只有一頁或兩頁,如揭陽市
4)對於這些情況,目前的翻頁顯然不適用,要修改翻頁循環的xpath,進行數字翻頁,實現翻頁通用。修改為://li[@class=active]/following-sibling::li[1]/a,點擊確定,就可以了
5)設置列表循環。在列表中,先點擊第一個元素,再點擊第二個,此時右側的選項框中提示「已選中100個元素」,選擇「循環點擊每個元素」,循環設置完成,點擊進入詳情頁。(可在點擊元素的高級選項中設置幾秒的執行前等待,限制速度)
步驟5:數據提取及導出
1)在詳情頁中分別點擊標題,在右側選項框中選擇「採集該元素的文本」,標題提取完成。再分別對信息來源、正文欄位做如上提取。(可在提取數據的高級選項中設置幾秒的執行前等待,防止網頁載入較慢,緩不出來數據
規則製作完畢,點擊保存,點擊開始採集,點擊本地採集,測試一下。
3)數據成功採集!
4)導出數據如下圖所示
推薦閱讀: