Android 利用jsoup 抓取腾讯应用市场的软件APP,作为我们自己应用的数据

最近想做自己的一个应用市场,但是苦于,没有应用数据,因此,用jsoup来抓取,腾讯应用市场的软件APP各种数据,

挺不错的。哈哈。你要啥数据都有哈。 不错。

直接看代码

package com.example.jsoup;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.select.Elements;

import android.app.Activity;

import android.os.Bundle;

import android.widget.TextView;

public class MainActivity extends Activity {

private TextView apps;

List<AppDownloadInfo> liAppDownloadInfos = new ArrayList<AppDownloadInfo>();

private String app = "http://android.myapp.com/myapp/category.htm?orgame=1";

private String appdetail = "http://android.myapp.com/myapp/detail.htm?apkName=com.tencent.mobileqq";

private String urlhead = "http://android.myapp.com/myapp/";

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

apps = (TextView) findViewById(R.id.apps);

// ThreadPoolManager.getInstance().addTask(new getNetApp());

ThreadPoolManager.getInstance().addTask(new getNetAppDetail());

}

public class getNetApp implements Runnable {

@Override

public void run() {

// TODO Auto-generated method stub

Document doc;

try {

doc = Jsoup.connect(app).get();

Elements ListDiv = doc.getElementsByAttributeValue("class",

"app-info-desc");

for (Element element : ListDiv) {

AppDownloadInfo appDownloadInfo = new AppDownloadInfo();

appDownloadInfo.setAppname(element.select("a").attr(

"appname"));

appDownloadInfo.setAppsize(element.getElementsByClass(

"size").text());

appDownloadInfo.setTypename(element.getElementsByClass(

"download").text());

appDownloadInfo.setHref(urlhead

+ element.select("a").attr("href"));

appDownloadInfo.setIconurl(element.select("a").attr(

"appicon"));

appDownloadInfo.setPackagename(element.select("a").attr(

"apk"));

appDownloadInfo.setDownloadUrl(element.select("a").attr(

"ex_url"));

liAppDownloadInfos.add(appDownloadInfo);

appDownloadInfo = null;

}

MainActivity.this.runOnUiThread(new Runnable() {

@Override

public void run() {

// TODO Auto-generated method stub

apps.setText(liAppDownloadInfos.toString());

}

});

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public class getNetAppDetail implements Runnable {

@Override

public void run() {

// TODO Auto-generated method stub

Document doc;

try {

doc = Jsoup.connect(appdetail).get();

List<String> tupian = new ArrayList<String>();

Elements ListDiv = doc.getElementsByAttributeValue("class",

"pic-img-box");

for (Element element : ListDiv) {

tupian.add(element.select("img").attr("data-src"));

}

Elements ListDiv2 = doc.getElementsByAttributeValue("class",

"det-othinfo-data");

final List<String> string=new ArrayList<String>();//获取到    版本号,以及开发商

for(Element element : ListDiv2){

if(element.childNodeSize()>0){

string.add(element.text());

}

}

MainActivity.this.runOnUiThread(new Runnable() {

@Override

public void run() {

// TODO Auto-generated method stub

apps.setText(string.toString());

}

});

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}

时间: 2024-10-12 20:56:34

Android 利用jsoup 抓取腾讯应用市场的软件APP,作为我们自己应用的数据的相关文章

Android利用wireshark抓取网络数据包

Android利用tcpdump和wireshark抓取网络数据包:http://blog.csdn.net/forlong401/article/details/23538737 Mac OS X上使用Wireshark抓包:http://blog.csdn.net/phunxm/article/details/38590561 Mac mini下wireshark抓包的使用:http://blog.sina.com.cn/s/blog_50da19a50101nxzn.html 如何mac下

利用fiddler抓取Android app数据包

前言 做Android开发的朋友经常需要做网络数据的获取和提交表单数据等操作,然而对于调试程序而言,很难知道我们的数据到底是以怎样的形式发送的,是否发送成功,如果发送失败有是什么原因引起的.fiddler工具为我们提供了很方便的抓包操作,可以轻松抓取浏览器的发出的数据,不管是手机APP,还是web浏览器,都是可以的. 什么是fiddler 百度百科上是这样说的:Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的"进出&quo

jsoup抓取网页+详细讲解

jsoup抓取网页+详细讲解 Java 程序在解析 HTML 文档时,相信大家都接触过 htmlparser 这个开源项目,我曾经在 IBM DW 上发表过两篇关于 htmlparser 的文章,分别是:从 HTML 中攫取你所需的信息和 扩展 HTMLParser 对自定义标签的处理能力.但现在我已经不再使用 htmlparser 了,原因是 htmlparser 很少更新,但最重要的是有了 jsoup . jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址.HT

利用Fiddler抓取websocket包

一.利用fiddler抓取websockt包 打开Fiddler,点开菜单栏的Rules,选择Customize Rules... 这时会打开CustomRules.js文件,在class Handlers中加入以下代码 static function OnWebSocketMessage(oMsg: WebSocketMessage) { // Log Message to the LOG tab FiddlerApplication.Log.LogString(oMsg.ToString()

利用wireshark抓取Telnet的用户名和密码

使用wireshark抓取Telnet   目标ip地址(telnet  192.168.88.1 ) 1,首先打开wireshark,然后选择网卡,点击开始. 2,为了在filter中输入telnet 或者输入(ip.dst == 目标ip地址 and  tcp.port== 23). 3,看下面的数据包,找到telnet  并且能够看到data:\r\n:如下图 4,接下来再看下面的数据包,就能看到明文用户名和密码了.如下图 这时候你就可以看到明文用户名的首字母x了,继续看下去你可以找到后面

利用RCurl抓取电影团购信息

1 抓取的网址是360团购 http://tuan.360.cn/bei_jing/c_0.html?kw=电影&pageno=1#tuanFilter 2 利用firefox的FireBug插件分析其源代码,如下所示: "//*/h3[@class='desc']" 匹配电影院名称 "//*/span [@class='discount']" 匹配原价 "//*/span [@class='price']" 匹配优惠价 "//

用python实现的抓取腾讯视频所有电影的爬虫

1. [代码]用python实现的抓取腾讯视频所有电影的爬虫    # -*- coding: utf-8 -*-# by awakenjoys. my site: www.dianying.atimport reimport urllib2from bs4 import BeautifulSoupimport string, timeimport pymongo NUM     = 0         #全局变量,电影数量m_type  = u''       #全局变量,电影类型m_site

java中用jsoup抓取网页源码,并批量下载图片

一.导入jsoup的核心jar包jsoup-xxx.jar jar包下载地址:jsoup-1.8.2.jar 中文API地址:http://www.open-open.com/jsoup/parsing-a-document.htm 二.java中用jsoup抓取网页源码,并批量下载图片 package com.dgh.test; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; i

【Python3 爬虫】16_抓取腾讯视频评论内容

上一节我们已经知道如何使用Fiddler进行抓包分析,那么接下来我们开始完成一个简单的小例子 抓取腾讯视频的评论内容 首先我们打开腾讯视频的官网https://v.qq.com/ 我们打开[电视剧]这一栏,找到一部比较精彩的电视剧爬取一下,例如:我们就爬取[下一站,别离]这部吧 我们找到这部电视剧的评论如下图: 我们看到上图标记部分[查看更多评论] 我们首先在Fiddelr中使用命令clear清除之前浏览的记录 输入命令直接回车即可 接着我们点击[查看更多评论],此时再次看Fiddler,我们可