當前位置:首頁 » 安卓系統 » 安卓手機如何加網頁爬取

安卓手機如何加網頁爬取

發布時間: 2022-07-25 14:36:27

1. android怎麼獲取網頁數據

下面介紹三種獲取網頁數據的代碼
例子來自於android學習手冊,android學習手冊包含9個章節,108個例子,源碼文檔隨便看,例子都是可交互,可運行,源碼採用android studio目錄結構,高亮顯示代碼,文檔都採用文檔結構圖顯示,可以快速定位。360手機助手中下載,圖標上有貝殼
//第一種
/**獲取參數(ArrayList<NameValuePair> nameValuePairs,String url)後post給遠程伺服器
* 將獲得的返回結果(String)返回給調用者
* 本函數適用於查詢數量較少的時候
*/
public String posturl(ArrayList<NameValuePair> nameValuePairs,String url){
String result = "";
String tmp= "";
InputStream is = null;
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
return "Fail to establish http connection!";
}

try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"utf-8"));
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();

tmp=sb.toString();
}catch(Exception e){
return "Fail to convert net stream!";
}

try{
JSONArray jArray = new JSONArray(tmp);
for(int i=0;i<jArray.length();i++){
JSONObject json_data = jArray.getJSONObject(i);
Iterator<?> keys=json_data.keys();
while(keys.hasNext()){
result += json_data.getString(keys.next().toString());
}
}
}catch(JSONException e){
return "The URL you post is wrong!";
}

return result;
}

//第二種
/**獲取參數指定的網頁代碼,將其返回給調用者,由調用者對其解析
* 返回String
*/
public String posturl(String url){
InputStream is = null;
String result = "";

try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
return "Fail to establish http connection!"+e.toString();
}

try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"utf-8"));
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();

result=sb.toString();
}catch(Exception e){
return "Fail to convert net stream!";
}

return result;
}

//第三種
/**獲取指定地址的網頁數據
* 返回數據流
*/
public InputStream streampost(String remote_addr){
URL infoUrl = null;
InputStream inStream = null;
try {
infoUrl = new URL(remote_addr);
URLConnection connection = infoUrl.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection)connection;
int responseCode = httpConnection.getResponseCode();
if(responseCode == HttpURLConnection.HTTP_OK){
inStream = httpConnection.getInputStream();
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return inStream;

2. 安卓怎麼嵌入web本地網頁

第一步:

存放本地html文件:放在app/src/main/assets目錄下,一般來說Androidstudio項目下是沒有assets文件夾的,所以需要在app/src/main下新建一個文件夾,取名assets.如圖:

新建文件夾assets

2.第二步就在在你的xml布局文件中,假如webview元素,接著訪問本地的html文件,功能很簡單,代碼如下:

WebView webview = (WebView)findViewById(R.id.webview);

webview.loadUrl("file:///android_asset/normal.html");

3. 在安卓手機上網頁源碼如何用

操作方法如下:

1、首先打開手機,找到並點擊進入設置,如下圖所示。

4. 如何在安卓app中加入一個網頁爬取功能

jsoup 支持html完整解析,如果使用httprequest,原生的話需要自己解析xml,通過httpconnection。

5. 如何直接在安卓手機上讀取app中打開的網頁的url

PackageManager mPackageManager = getPackageManager();
mPackageManager.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES );
這樣就獲取到了系統上面所有的app.
那麼如何獲取到非系統的app呢?
其實很簡單,我們只需要做個簡單的判斷就行了,如:
final PackageInfo packageInfo = mPackageInfoList.get(i);
if ((packageInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
//添加自己的代碼即可

6. 怎麼提取安卓軟體中的某個網頁

建議下載一個瀏覽器,每次打開網頁都選擇你下的那個瀏覽器,等網頁完全打開,你點擊收藏,或者點擊歷史,就大功告成

7. 安卓如何實現獲取網頁源代碼

public class GetHtmlCodeActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

TextView textView = (TextView)this.findViewById(R.id.picture_textview);
try {
textView.setText(getPictureData("http://www..com"));
} catch (Exception e) {
Log.e("GetHtmlCodeActivity", e.toString());
Toast.makeText(GetHtmlCodeActivity.this, "網路連接失敗", 1).show();
}
}
//得到圖片的二進制數據
public String getPictureData(String path) throws Exception{
// 類 URL 代表一個統一資源定位符,它是指向互聯網「資源」的指針。
URL url = new URL("http://www..com/");
// 每個 HttpURLConnection 實例都可用於生成單個請求,
//但是其他實例可以透明地共享連接到 HTTP 伺服器的基礎網路
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//設置 URL 請求的方法
conn.setRequestMethod("GET");
//設置一個指定的超時值(以毫秒為單位),
//該值將在打開到此 URLConnection 引用的資源的通信鏈接時使用。
conn.setConnectTimeout(5 * 1000);
// conn.getInputStream()返回從此打開的連接讀取的輸入流
InputStream inStream = conn.getInputStream();// 通過輸入流獲取html數據
byte[] data = readInputStream(inStream);// 得到html的二進制數據
String html = new String(data);
return html;

}
//讀取輸入流中的數據,返回位元組數組byte[]
public byte[] readInputStream(InputStream inStream) throws Exception{
//此類實現了一個輸出流,其中的數據被寫入一個 byte 數組
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
// 位元組數組
byte[] buffer = new byte[1024];
int len = 0;
//從輸入流中讀取一定數量的位元組,並將其存儲在緩沖區數組buffer 中
while ((len = inStream.read(buffer)) != -1) {
// 將指定 byte 數組中從偏移量 off 開始的 len 個位元組寫入此輸出流
outStream.write(buffer, 0, len);
}
inStream.close();
//toByteArray()創建一個新分配的 byte 數組。
return outStream.toByteArray();
}
}

可以看一下這個自己想想哦

8. 安卓手機怎麼添加網頁的快捷方式到桌面

通過瀏覽器菜單,添加「桌面書簽」功能來實現。具體操作如下。

1)打開華為瀏覽器,登陸手機新浪網。

9. 如何進行手機APP的數據爬取

Python爬蟲手機的步驟:

1. 下載fiddler抓包工具

2. 設置fiddler

這里有兩點需要說明一下。

設置允許抓取HTTPS信息包

操作很簡單,打開下載好的fiddler,找到 Tools -> Options,然後再HTTPS的工具欄下勾選Decrpt HTTPS traffic,在新彈出的選項欄下勾選Ignore server certificate errors。

設置允許外部設備發送HTTP/HTTPS到fiddler

相同的,在Connections選項欄下勾選Allow remote computers to connect,並記住上面的埠號8888,後面會使用到。

好了,需要的fiddler設置就配置完成了。

3. 設置手機端

設置手機端之前,我們需要記住一點:電腦和手機需要在同一個網路下進行操作。

可以使用wifi或者手機熱點等來完成。

假如你已經讓電腦和手機處於同一個網路下了,這時候我們需要知道此網路的ip地址,可以在命令行輸入ipconfig簡單的獲得,如圖。

好了,下面我們開始手機端的設置。

手機APP的抓取操作對於Android和Apple系統都可用,博主使用的蘋果系統,在此以蘋果系統為例。

進入到手機wifi的設置界面,選擇當前連接網路的更多信息,在蘋果中是一個嘆號。然後在最下面你會看到HTTP代理的選項,點擊進入。

進入後,填寫上面記住的ip地址和埠號,確定保存。

4. 下載fiddler安全證書

在手機上打開瀏覽器輸入一個上面ip地址和埠號組成的url:http://192.168.43.38:8888,然後點擊FiddlerRoot certificate下載fiddler證書。

以上就簡單完成了所有的操作,最後我們測試一下是否好用。

5. 手機端測試

就以知乎APP為例,在手機上打開 知乎APP。下面是電腦上fiddler的抓包結果。

結果沒有問題,抓到信息包。然後就可以使用我們分析網頁的方法來進行後續的操作了。

10. 如何利用安卓手機進行app裡面的爬蟲採集

思路:

開發簡單爬取效率低的辦法找app自動化測試工具直接模擬人操作得到數據

如果對爬起取效率高或者對網路熟,可以用wireshark之類公具分析他的通信協議,是http還是自定義協議,然後偽造請求。

熱點內容
db2plsql 發布:2025-01-22 08:19:10 瀏覽:778
豬豬俠腳本沒反應 發布:2025-01-22 08:08:37 瀏覽:811
賽博朋克跟永劫無間哪個配置高 發布:2025-01-22 08:07:07 瀏覽:534
請盡快上傳 發布:2025-01-22 08:06:22 瀏覽:188
河北編程培訓 發布:2025-01-22 08:01:42 瀏覽:591
a星演算法視頻 發布:2025-01-22 07:55:01 瀏覽:878
快手安卓怎麼直播 發布:2025-01-22 07:54:58 瀏覽:937
買伺服器搭建vpn 發布:2025-01-22 07:53:21 瀏覽:808
路由器忘記密碼如何解 發布:2025-01-22 07:38:47 瀏覽:154
5分鍾視頻編譯 發布:2025-01-22 07:36:33 瀏覽:772