亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

htmlparse的簡單使用--------爬取電影網頁的全部下載鏈接

2019-11-10 16:49:58
字體:
來源:轉載
供稿:網友

1前期準備,下載htmlparse壓縮包并配置到eclipse上,到下面網址可以下載

http://htmlparser.sourceforge.net/ 1 7 2 3 4 現在我們就可以導入和使用htmlparser了 2.網頁的分析與根據網頁源碼使用htmlparse

1、這里先分析與獲取一個電影介紹頁面的內容

5 現在我們來查看網頁源代碼 6

好、我們現在先來獲取一個頁面的下載鏈接

/** * 獲取一個頁面的下載鏈接 */ public static String getMoiveDownloadUrl(String moiveIntroUrl) { //頁面下載連接保存在這里 String moiveDownLoadUrl = ""; try { //首先根據頁面URL建立一個Parser. Parser parser = new Parser(moiveIntroUrl);//使用parser中extractAllNodesThatMatch方法,這個有許多的過濾器,可以幫助我們過濾出我們想要的內容,具體可以看api的介紹//這里我們使用鏈接文本過濾器,可以過濾出鏈接里面含ftp的內容,這樣就可以取出我們想要的鏈接 NodeList nodelist = parser.extractAllNodesThatMatch(new LinkStringFilter("ftp")); for (int i = 0; i < nodelist.size(); i++) { LinkTag tag = (LinkTag) nodelist.elementAt(i); moiveDownLoadUrl = tag.getLink(); } } catch (ParserException e) { e.PRintStackTrace(); } return moiveDownLoadUrl; }2、獲取一個分頁里的所有電影介紹頁面 8 9/** * 獲取一個分頁里的所有電影介紹頁面 */ public static List getAllMoiveUrlFromOneList(String pageListUrl) {//將鏈接地址以集合的形式返回出去 List<String> allMoiveUrl = new ArrayList<String>(); try { Parser parser = new Parser(pageListUrl);//這里我們使用屬性過濾器,可以幫助我們過濾一些屬性特殊或者屬性里面值唯一的標簽 NodeList nodelist = parser.extractAllNodesThatMatch(new HasAttributeFilter("class", "ulink")); for (int i = 0; i < nodelist.size(); i++) { LinkTag tag = (LinkTag) nodelist.elementAt(i);//將取出的分頁鏈接拼接一下,放入到集合中來。 allMoiveUrl.add("http://www.ygdy8.net" + tag.getLink()); } } catch (ParserException e) { e.printStackTrace(); } return allMoiveUrl; }3、獲取電影網里面的所有分頁 10 11/** * 獲取電影網里面的所有的分頁 */ public static List getAllPage() {//將鏈接地址以集合的形式返回出去 List<String> allPage = new ArrayList<String>(); try { Parser parser = new Parser("http://www.ygdy8.net/html/gndy/dyzz/index.html"); NodeList nodelist = parser.extractAllNodesThatMatch(new TagNameFilter("option")) .extractAllNodesThatMatch(new HasAttributeFilter("value")); for (int i = 0; i < nodelist.size(); i++) { OptionTag tag = (OptionTag) nodelist.elementAt(i); if(tag.getAttribute("value").contains("list")){ allPage.add("http://www.ygdy8.net/html/gndy/dyzz/" + tag.getAttribute("value")); } } } catch (ParserException e) { e.printStackTrace(); } return allPage; }

我們到現在就可以得到全部分頁的鏈接,各個電影介紹頁面的鏈接,介紹頁面里的下載鏈接。接下來我們要做的就是將這三個方法整合起來,獲得全部電影的下載鏈接

/** * 功能:保存數據到文件中 * * @param content * 要保存的內容 * @param fileName * 目標文件名(路徑) */ public static boolean writeContentToFileTwo(String content, String fileName) { boolean flag = false; try { PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(fileName,true))); pw.println(); pw.print(content); pw.flush(); pw.close(); flag = true; } catch (FileNotFoundException e) { e.printStackTrace(); flag = false; } return flag; }public static List getAllMoive() { List<String> movieList = new ArrayList<String>(); // 得到全部的分頁鏈接 List<String> allPage = getAllPage(); for (Iterator iterator = allPage.iterator(); iterator.hasNext();) { String pageListUrl = (String) iterator.next(); List<String> allMoiveUrl = getAllMoiveUrlFromOneList(pageListUrl); for (Iterator iterator2 = allMoiveUrl.iterator(); iterator2.hasNext();) { String moiveIntroUrl = (String) iterator2.next(); String moiveDownLoadUrl = getMoiveDownloadUrl(moiveIntroUrl); writeContentToFileTwo(moiveDownLoadUrl,"a.txt"); movieList.add(moiveDownLoadUrl); } } return movieList ; } public static void main(String[] args) { getAllMoive(); }

效果截圖 12

3.分析與總結

其實這個工具的使用是不復雜的,流程也很清晰,問題的關鍵在于如何在一個龐大的html頁面中獲取你想要的內容,可以多一點查看各種的節點過濾器,它可以幫助我們選出我們想要的內容,每次在爬取網頁之前我們都要花大量時間去分析一個網頁,找到我們想要的內容,不能多也不能少,這我覺得才是爬蟲的使用的重點


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩在线一区| 日本在线观看天堂男亚洲| 精品日韩中文字幕| 国内精品模特av私拍在线观看| 日韩在线观看免费高清| 久久香蕉国产线看观看av| 91产国在线观看动作片喷水| 激情久久av一区av二区av三区| 中文字幕亚洲一区| 久久99国产综合精品女同| 国产午夜精品免费一区二区三区| 高清欧美性猛交xxxx黑人猛交| 亚洲经典中文字幕| 国产精品久久99久久| xxxxx91麻豆| 亚洲国产精品福利| 国产九九精品视频| 日韩有码在线观看| 伊人亚洲福利一区二区三区| 欧美一区深夜视频| 日韩欧美在线观看视频| 午夜精品久久久久久99热| 欧美在线一区二区三区四| 国产精品视频资源| 成人亚洲激情网| 精品国产乱码久久久久久婷婷| 九九热这里只有在线精品视| 国产欧美一区二区三区在线| 日韩专区中文字幕| 久久精品视频99| 亚洲a级在线播放观看| 国产亚洲美女精品久久久| 日韩电影中文字幕| 性欧美长视频免费观看不卡| 国产精品久久久久久av下载红粉| 黑人极品videos精品欧美裸| 日韩国产欧美区| 深夜福利亚洲导航| 成人久久18免费网站图片| 97香蕉超级碰碰久久免费软件| 18性欧美xxxⅹ性满足| 91欧美日韩一区| 亚洲一区二区三区毛片| 国产美女直播视频一区| 久久精品成人动漫| 国产成人一区二区| 色爱av美腿丝袜综合粉嫩av| 亚洲sss综合天堂久久| 国产精品91在线观看| 欧美性xxxx在线播放| 欧美电影免费观看高清完整| 成人美女免费网站视频| 久久影院模特热| 亚洲91精品在线观看| 日韩电影免费在线观看中文字幕| 国产精品久久久久国产a级| 精品成人av一区| 国产午夜精品视频| 国产精自产拍久久久久久| 中文字幕久精品免费视频| 中文国产成人精品久久一| 91影院在线免费观看视频| 成人精品视频久久久久| 欧美又大又硬又粗bbbbb| 亚洲精品成人久久电影| 美女黄色丝袜一区| 91精品视频网站| 一区二区欧美亚洲| 日韩精品久久久久| 日韩免费观看在线观看| 国产综合久久久久久| 久久久久久久电影一区| 欧美极品美女视频网站在线观看免费| 国产精品美女www| 亚洲人成电影网站色xx| 久久久国产成人精品| 亚洲电影第1页| 久久国产天堂福利天堂| 国产精品一区二区三区久久久| 91高清视频在线免费观看| 亚洲字幕一区二区| 97色在线观看免费视频| 久久av中文字幕| 国产精品情侣自拍| 亚洲电影免费观看高清完整版| 久热爱精品视频线路一| 不卡伊人av在线播放| 九九热视频这里只有精品| 黑丝美女久久久| 成人av.网址在线网站| 91高潮在线观看| 97av在线播放| 68精品国产免费久久久久久婷婷| 久久精品美女视频网站| 精品久久久久久中文字幕大豆网| 成人网在线观看| 久久91超碰青草是什么| 欧美性生交xxxxxdddd| 久久久精品2019中文字幕神马| 日韩美女中文字幕| 亚洲人成在线播放| 裸体女人亚洲精品一区| 久久久精品国产亚洲| 久久精品一本久久99精品| 亚洲国产另类久久精品| 成人在线视频网站| 亚洲男人天堂视频| 成人欧美一区二区三区黑人孕妇| 亚洲精品欧美一区二区三区| 欧美丰满少妇xxxxx做受| 日韩av电影手机在线观看| 日韩高清人体午夜| 欧洲精品毛片网站| 亚洲区免费影片| 18性欧美xxxⅹ性满足| 日韩激情av在线免费观看| 亚洲精品久久久久| 亚洲欧洲免费视频| 久久久久久一区二区三区| 操91在线视频| 日韩在线免费视频| 欧美国产在线视频| 欧美裸体xxxx极品少妇| 欧美成年人网站| 亚洲精品一区二区三区不| 欧美日韩国产成人高清视频| 热门国产精品亚洲第一区在线| 欧美香蕉大胸在线视频观看| 成人精品一区二区三区电影免费| 成人黄色av网站| 欧美一级视频一区二区| 日韩av黄色在线观看| 欧美视频在线观看 亚洲欧| 亚洲精品女av网站| 高清一区二区三区四区五区| 久久久久久国产免费| 国产视频综合在线| 日韩中文字幕视频在线观看| 日韩电影网在线| 日本精品视频在线观看| 日韩精品www| 久久噜噜噜精品国产亚洲综合| 在线视频欧美日韩精品| 久久伊人精品天天| 岛国av一区二区| 国模极品一区二区三区| 亚洲国产精品电影| 久久久久国色av免费观看性色| 亚洲成人1234| 久久人人爽国产| 欧美激情视频一区二区三区不卡| 国产精品免费观看在线| 91精品国产沙发| 久久精品国亚洲| 国产精品9999| 最新69国产成人精品视频免费| 日本久久久a级免费| 亚洲国产中文字幕在线观看| 久久久之久亚州精品露出| 中文字幕欧美日韩在线| 亚洲欧美国产视频| 精品一区二区三区四区在线| 国产精品99一区| 亚洲第一精品夜夜躁人人爽|