爬虫 spider07——爬取腾讯娱乐新闻
四要素:
首先,确定首页URL 【谷歌浏览器 F12】【https://new.qq.com/ch/ent/】
代码展示:
实体类News :
public class News {public String appId;//app_idpublic String title;//titlepublic String intro;//intropublic String source;//sourcepublic String url; //urlpublic String updateTime ;//update_time@Overridepublic String toString() {return "News{" +"appId='" + appId + '\'' +", title='" + title + '\'' +", intro='" + intro + '\'' +", source='" + source + '\'' +", url='" + url + '\'' +", updateTime='" + updateTime + '\'' +'}';}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getIntro() {return intro;}public void setIntro(String intro) {this.intro = intro;}public String getSource() {return source;}public void setSource(String source) {this.source = source;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}@JSONField(name="update_time",format = "yyyy-MM-dd HH:mm:ss")public String getUpdateTime() {return updateTime;}@JSONField(name="update_time",format = "yyyy-MM-dd HH:mm:ss")public void setUpdateTime(String updateTime) {this.updateTime = updateTime;}@JSONField(name="app_id")public String getAppId() {return appId;}@JSONField(name="app_id")public void setAppId(String appId) {this.appId = appId;}
}
集合类:
public class NewsCollection {//data与json中data相对应public List<News> data;public List<News> getData() {return data;}public void setData(List<News> data) {this.data = data;}
}
爬虫类:
import com.alibaba.fastjson.JSON;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.junit.Test;import java.io.File;
import java.io.IOException;
import java.util.List;public class TestQQ {@Test //根据标签名称public void jsoupParse01() throws IOException {String url="https://pacaio.match.qq.com/irs/rcd?cid=146&token=49cbb2154853ef1a74ff4e53723372ce&ext=ent" +"&page=1&callback=__jp6";CloseableHttpClient closeableHttpClient = HttpClients.createDefault();HttpGet httpGet=new HttpGet(url);//执行请求 user center pageCloseableHttpResponse closeableHttpResponse = closeableHttpClient.execute(httpGet);HttpEntity entity = closeableHttpResponse.getEntity();String content = EntityUtils.toString(entity, "GB2312");String jsonContent= StringToJson(content);List<News> news=jsonToObject(jsonContent);}/*** string转换成json工具方法* @param srcJson* @return*/public String StringToJson(String srcJson){int start=srcJson.indexOf('(')+1;int end=srcJson.lastIndexOf(')');String jsonContent= srcJson.substring(start,end);return jsonContent;}public List<News> jsonToObject(String srcJson){//通过fastjson把json字符串转换成java对象NewsCollection newsCollection = JSON.parseObject(srcJson, NewsCollection.class);List<News> news = newsCollection.getData();for (News newsMessage : news) {System.out.println(newsMessage);System.out.println("---------------------------------------------------------");}return news;}
}
结果展示:
【注】根据不同页数爬取多页信息
爬虫 spider07——爬取腾讯娱乐新闻相关推荐
- 爬虫 spider08——爬取腾讯娱乐新闻【使用redis去重】
根据 爬虫 spider07--爬取腾讯娱乐新闻 https://blog.csdn.net/qq_41946557/article/details/102566143 进行修改! 代码: impor ...
- Python网络爬虫:爬取腾讯招聘网职位信息 并做成简单可视化图表
hello,大家好,我是wangzirui32,今天我们来学习如何爬取腾讯招聘网职位信息,并做成简单可视化图表,开始学习吧! 文章目录 1. 网页分析 2. 获取json数据 3. 转换为Excel ...
- 爬虫实战——爬取腾讯招聘的职位信息(2020年2月2日)
爬取腾讯招聘的职位信息 思路分析 特别说明 1.获取PostId列表 2.爬取详情页面 3.保存数据 完整代码 结果展示 总结分析 思路分析 特别说明 本文以Java工作岗位信息为例进行说明,如果想爬 ...
- python爬取腾讯新闻_python爬虫实战――爬取腾讯新闻 !
无论我们通过浏览器打开网站.访问网页,还是通过脚本对URL网址进行访问,本质上都是对HTTP服务器的请求,浏览器上所呈现的.控制台所显示的都是HTTP服务器对我们请求的响应. 以打开腾讯新闻官网为例, ...
- requests使用re爬取腾讯体育新闻
简介 爬取新闻标题 1. 安装 pip install request pip install fake_useragent 2. 演示 进入网址,查看网页源代码 找到标题界面,根据li标签的特征使用 ...
- 使用selenium爬取腾讯热点新闻
在爬取之前我一直都陷入了一个误区,我认为只用selenium就可以实现这个工作,事实上它确实是可以,只不过selenium是自动化测试工具,可以驱动浏览器(有界面,无界面)来执行特定的操作,可以模仿人 ...
- 腾讯爬虫python_Python爬虫,爬取腾讯漫画实战
先上个爬取的结果图 最后的结果为每部漫画按章节保存 运行环境 IDE VS2019 Python3.7 先上代码,代码非常简短,包含空行也才50行,多亏了python强大的库 importosimpo ...
- python爬取收费漫画_Python爬虫,爬取腾讯漫画实战
先上个爬取的结果图 最后的结果为每部漫画按章节保存 运行环境 ide vs2019 python3.7 chrome.chromedriver chrome和chromedriver的版本需要相互对应 ...
- python爬取收费漫画_python爬取收费漫画_Python爬虫,爬取腾讯漫画实战
先上个爬取的结果图 最后的结果为每部漫画按章节保存 运行环境 ide vs2019 python3.7 chrome.chromedriver chrome和chromedriver的版本需要相互对应 ...
最新文章
- [缓存]迅雷(XUNLEI)的工作原理揭密
- Git的分支命令详解
- malloc 两种实现方式:brk 和 mmap
- 【MFC】自绘对话框动画效果的状态栏
- EntityFramework Core 2.0执行原始查询如何防止SQL注入?
- 根据时间戳 统计每天用户的金额总数
- spring boot 集成 Oracle Access Manager(OAM)单点登录
- pycharm conda 环境 切换 linux_windows配置wsl2环境+pycharm指路
- vector中针对自定义类型的排序
- Python | 单词搜索(educoder)
- (每日一练c++)统计某一单科成绩各分数段的分布人数
- Excel用户如何打破内卷?只需要一个新软件,就能突破excel天花板
- 2019版云计算大数据学习路线图(含大纲+视频+工具+书籍+面试)
- bootstrapCDN地址
- java判断两个数互质_AcWing 458. 比例简化-java(无需判断互质)
- 【Alpha版本】冲刺阶段——Day 5
- 通过淘宝接口获取手机号码归属地
- 一个“”字引发的痛苦经历
- python + ffmpeg爬取视频,转化为mp4格式
- rtt 在STM32F767上实现虚拟串口的问题
热门文章
- 中石油训练赛 - Equidistant(bfs)
- CodeForces - 613D Kingdom and its Cities(虚树+贪心)
- selenium java session_Selenium Java浏览器会话重用
- HDU4367(线段相交与斐波那契数列)
- C++虚继承(五) --- 虚拟继承的概念
- WINVER和_WIN32_IE等宏的含义
- 用实例证明dll中new的内存不能在exe中释放
- VC++ 创建Windows服务
- 进程间通信 - 剪贴板实现
- python 实现HMAC_SHA1算法