抓取js網頁內容,js獲取瀏覽器

本文目錄一覽:

用php 怎麼抓取js+ajax動態生成的頁面內容

第一步,查看網頁源代碼,找到ajax請求的URL。

比如,js代碼為:

$.ajax({

url: ‘ajax.php?id=100’,

data: {ad_num:num,ad_str:str,cart_update_time:cart_update_time},

type: ‘POST’,

dataType: ‘text’,

async : false,

success: function(data){

}

其中的ajax.php?id=100就是ajax請求的URL。

第二步,拼接URL,用網站的域名加上這個找到的請求路徑。

比如,網站域名為: 拼接後的URL為:

第三步,用PHP讀取第二步拼接出的URL即可。

怎麼爬取網頁的動態內容,很多都是js動態生

抓取動態頁面有兩種常用的方法,一是通過JavaScript逆向工程獲取動態數據接口(真實的訪問路徑),另一種是利用selenium庫模擬真實瀏覽器,獲取JavaScript渲染後的內容。但selenium庫用起來比較繁瑣,抓取速度相對較慢,所以第一種方法日常使用較多。

如何抓取js函數生成的網頁內容

直接用net/http請求返回json的地址。有些數據可能需要cookie,可以直接用瀏覽器的或者模擬登陸。代碼如下:

final WebClient webClient = new WebClient();

String url=””;

final HtmlPage page = webClient.getPage(“”);

WebClient client = new WebClient( BrowserVersion.INTERNET_EXPLORER_8 ,”127.0.0.1″, 28089 );

final WebClient client = new WebClient(BrowserVersion.INTERNET_EXPLORER_8);

final HtmlPage page =client.getPage(url);

client.waitForBackgroundJavaScript(300000);

client.waitForBackgroundJavaScript(120*1000);

get list of all divs

final List divs = (List) page.getByXPath(“//div”);

HtmlElement he =page.getElementById(“dealList”);

get div which has a ‘name’ attribute of ‘John’

final HtmlDivision div = (HtmlDivision) page.getByXPath(“//div[@name=’John’]”).get(0);

System.out.println(he.asXml());

System.out.println(he.getFirstChild());

System.out.println(he.getFirstChild().asXml());

client.closeAllWindows();

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/238525.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:11
下一篇 2024-12-12 12:11

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • 如何解決web瀏覽器雙擊事件時差

    本文將從以下幾個方面對web瀏覽器雙擊事件時差進行詳細闡述,並提供解決方法。 一、雙擊事件延時設置 1、問題描述:在web瀏覽器中,雙擊事件默認會延時一定的時間才能觸發該事件,這個…

    編程 2025-04-29
  • Python七年級內容用法介紹

    本文將從多個方面對Python七年級內容進行詳細闡述。 一、安裝Python 要使用Python進行編程,首先需要在計算機上安裝Python。Python可以在官網上免費下載。下載…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • python爬取網頁並生成表格

    本文將從以下幾個方面詳細介紹如何使用Python爬取網頁數據並生成表格: 一、獲取網頁數據 獲取網頁數據的一般思路是通過HTTP請求獲取網頁內容,最常用的方式是使用Python庫r…

    編程 2025-04-28
  • 使用Python模擬手機瀏覽器的方法

    解答如何使用Python模擬手機瀏覽器,並且給出示例代碼。 一、安裝Selenium庫 使用Python模擬手機瀏覽器需要使用Selenium庫。 首先,使用pip命令進行安裝: …

    編程 2025-04-28
  • 網頁防篡改的重要性和市場佔有率

    網頁防篡改對於保護網站安全和用戶利益至關重要,而市場上針對網頁防篡改的產品和服務也呈現出不斷增長的趨勢。 一、市場佔有率 據不完全統計,目前全球各類網頁防篡改產品和服務的市場規模已…

    編程 2025-04-28
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • 谷歌瀏覽器窗口大小調整

    谷歌瀏覽器是當今最流行的網絡瀏覽器之一,它的窗口大小調整是用戶操作其中的一個重要部分。本文將從多個方面對谷歌瀏覽器窗口大小調整做詳細的闡述。 一、窗口大小調整的基礎操作 谷歌瀏覽器…

    編程 2025-04-28

發表回復

登錄後才能評論