日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

爬取虎牙之二:试用htmlunit模拟js爬取ajax页面

發(fā)布時(shí)間:2025/3/20 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爬取虎牙之二:试用htmlunit模拟js爬取ajax页面 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
  • jsoup無(wú)法爬取動(dòng)態(tài)的ajax界面,百度了許久之后有人說(shuō)htmlunit等爬蟲(chóng)工具可以支持模擬瀏覽器行為,百度上查了htmlunit的簡(jiǎn)單用法,爬取虎牙直播分欄的js鏈接。模擬點(diǎn)擊。獲取點(diǎn)擊后的下一個(gè)頁(yè)面。
  • 有人說(shuō)用htmlunit獲取不到ajax的頁(yè)面,答案是錯(cuò)誤的,用htmlunit可以獲取點(diǎn)擊后的頁(yè)面源碼,但是使用很有條件,對(duì)于輸出。他只能打印一個(gè)js行為,也就是如果你界面上有多喝動(dòng)態(tài)生成的頁(yè)面按鈕比如2.3.4**下一個(gè)。你要做的只能選擇一個(gè)。如果想選擇遍歷所有,看來(lái)還是要選擇下一頁(yè),然后將下一頁(yè)再?gòu)男聢?zhí)行同樣的操作(我沒(méi)有這樣試過(guò)不知道行不行,我用的是另外方法)。想想就很煩,并且htmlunit加載js很慢,如果爬取效率特別低。但是代碼以及測(cè)試簡(jiǎn)單給大家:
  • 有個(gè)重要點(diǎn)就是一定要有thread.sleep();可能js執(zhí)行慢需要反應(yīng)吧,沒(méi)有這句話會(huì)經(jīng)常抓不到。
import java.io.IOException; import java.util.ArrayList; import java.util.List;import com.gargoylesoftware.htmlunit.BrowserVersion; import com.gargoylesoftware.htmlunit.NicelyResynchronizingAjaxController; import com.gargoylesoftware.htmlunit.WebClient; import com.gargoylesoftware.htmlunit.html.HtmlAnchor; import com.gargoylesoftware.htmlunit.html.HtmlPage;public class HTMLunit {public static void main(String[] args) throws IOException, InterruptedException{final WebClient webClient = new WebClient(BrowserVersion.CHROME);webClient.getOptions().setTimeout(2000);//webClient.getOptions().getTimeout();webClient.getOptions().setJavaScriptEnabled(true);webClient.getOptions().setThrowExceptionOnScriptError(false); webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);webClient.getOptions().setActiveXNative(false); webClient.getOptions().setCssEnabled(false); // webClient.waitForBackgroundJavaScript(600*1000); webClient.setAjaxController(new NicelyResynchronizingAjaxController()); HtmlPage page=webClient.getPage("https://www.huya.com/g/wzry"); Listanchors=page.getAnchors();//System.out.println(anchors);Listjsanchors=new ArrayList();for(HtmlAnchor anchor:anchors){ String href=anchor.getAttribute("href");/** 抓取js的鏈接*/if(href.startsWith("javascript:")){ {jsanchors.add(anchor);}}else if("#".equals(href)){if(anchor.hasAttribute("onclick")){jsanchors.add(anchor);}}}HtmlAnchor t1=jsanchors.get(0);HtmlPage newpage=t1.click();Thread.sleep(1000);System.out.println(newpage.asText()); // for(HtmlAnchor anchor:jsanchors) // { // /* // * 這段話會(huì)失敗,因?yàn)閔tmlunit只能執(zhí)行一次 會(huì)輸出相同頁(yè) // */ // Thread.sleep(600); // HtmlPage newpage=anchor.click(); // Thread.sleep(600); // System.out.print(newpage.asText()); // // } } }

輸出:

大喬 孫臏 可篩選熱門(mén)英雄啦! 美女 質(zhì)量局 來(lái)一波5排好撒 Song 1623 絕跡國(guó)一Pro程,單排上王者~ 寒夜 1533 單排只用小喬-契約之戰(zhàn)-狂鐵 東辰-子軒 1527 我真的不da野,是野怪先動(dòng)的手 LYG丶七魚(yú) 1517 國(guó)服劉備,一天一個(gè)王者 袖天-狠人 1499 小賤;賠錢(qián)虎野區(qū)霸主 鉆上星耀上王者 東辰-小賤 1497 新秀happy:中午跟佳哥,天才哥打五排 happy 1494

  • 雖然這種方式不太好,但是也能將就抓取小數(shù)據(jù)。也算是成功模擬了吧。
  • 對(duì)于這種低效率,出錯(cuò)大的抓取方式抓取大規(guī)模數(shù)據(jù)肯定是不行的。那么下篇就講解如何抓取json文件(后臺(tái)傳來(lái)的數(shù)據(jù)源文件)。
    如果對(duì)后端、爬蟲(chóng)等感性趣歡迎關(guān)注我的個(gè)人公眾號(hào)交流:bigsai
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的爬取虎牙之二:试用htmlunit模拟js爬取ajax页面的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美一级免费观看 | 成人在线免费 | 成人性生活免费看 | 卡一卡二卡三 | 在线观看视频二区 | 性欧美一区| 五月婷色 | 国产a三级 | 丝袜av网站 | 性欧美精品 | 中文字幕乱码中文乱码b站 国产一区二区三区在线观看视频 | 超污视频网站 | 免费网站在线观看人数在哪动漫 | 啪视频免费 | 波多野结衣三区 | 二区三区偷拍浴室洗澡视频 | 看a网站 | 中文字幕人妻一区二区三区 | 国产福利一区二区 | 中文在线第一页 | 国产成人精品毛片 | va婷婷在线免费观看 | 午夜你懂的 | 欧美乱大交xxxxx潮喷 | 日韩中文无 | 国产喷白浆一区二区三区 | 久久免费电影 | 国产精品久久综合青草亚洲AV | 在线午夜电影 | 激情视频一区二区三区 | 国产精品欧美久久久久天天影视 | 日韩一区二区在线观看 | 欧美性区| 国产激情av| jzzjzz日本丰满少妇 | 情五月 | 午夜精品久久久久久久96蜜桃 | av大片在线播放 | 成人福利免费视频 | 色偷偷中文字幕 | 色婷婷影院 | 二区久久| 最近最新中文字幕 | 欧美激情一区 | 337p日本欧洲亚洲大胆张筱雨 | 香蕉视频黄色 | www.亚洲天堂.com | a极黄色片 | 天天草天天干 | aaa级片| 噜噜视频 | 少妇一级淫片免费播放 | 韩国三级视频 | 网站一级片 | 国产蜜臀av一区二区 | 国产三区在线观看 | 国产精品久久久久永久免费看 | 岛国久久久 | 日本一区久久 | 午夜丁香婷婷 | 中文av免费观看 | 日韩视频一区在线观看 | 成年人网站免费看 | 西比尔在线观看完整视频高清 | 亚洲欧美专区 | www.四虎com | 中文字幕日韩在线播放 | aaaaa毛片 | 欧美日韩一区二区中文字幕 | 成年人免费观看网站 | 91av国产精品 | 亚洲综合不卡 | 麻豆国产91在线播放 | 日韩中文字幕网址 | 欧美在线xxxx | 影音先锋男人资源网站 | 久久久精品999 | 国产成人精品免费在线观看 | 成人午夜视频免费在线观看 | 日本精品中文字幕 | 日本啊啊视频 | 精品国产自 | 秋霞一区二区三区 | jzzijzzij日本成熟少妇 | 久久精精品久久久久噜噜 | 精品一区二区三区日韩 | 免费在线观看成人 | 黄色成人在线播放 | 亚洲免费视频一区 | 国产无套在线观看 | 精品人妻一区二区三区蜜桃 | 婷婷激情五月综合 | 成人在线免费播放 | 精品成人av一区二区三区 | 九九视频免费观看 | 日韩精品999 | 欧美一级特黄aaaaaa大片在线观看 | 中国浓毛少妇毛茸茸 | 91丨porny丨中文|