近来今日头条特别的火,就拿来研究研究!
头条的新闻内容和新闻评论是开放的,无需登陆就可以获取的到!
但是新闻的评论是需要登陆后才能进行评论的,于是开始模拟头条的用户登陆:
1.模拟登陆的操作能够获取到cookie值,定位initCookie,但是该cookie值不能直接用来作为对新闻进行评论的请求参数。
2.需要找到一个新闻url,例如:http://toutiao.com/a4583986550/,将上部获取的cookie值作为参数,模拟请求,获取到cookie,定为lastCookie.
3.将initCookie和lastCookie进行拼接就可获取到最终的可用于新闻评论的cookie
代码如下:
private String doLoginTouTiao2(String loginName, String password) { String url = "https://mp.toutiao.com/auth/login_post/"; Map<String, String> headers = new HashMap<String, String>(); Map<String, String> params = new HashMap<String, String>(); headers.put("Host", "mp.toutiao.com"); headers.put("Connection", "keep-alive"); headers.put("Origin", "https://mp.toutiao.com"); headers.put( "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"); headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); headers.put("Accept", "application/json, text/javascript, */*; q=0.01"); headers.put("X-Requested-With", "XMLHttpRequest"); headers.put("X-CSRFToken", "b3ebed559047fa1cacaccc6ccfb66851"); headers.put("Referer", "https://mp.toutiao.com/login/"); // headers.put("Accept-Encoding", "gzip, deflate"); headers.put("Accept-Language", "zh-CN,zh;q=0.8"); // String cookie = "uuid=\"w:0256c3403d82490abcc2c7819d48865f\"; tt_webid=3932107506; utm_source=toutiao; __utma=24953151.381297160.1435021810.1435023762.1435106245.3; __utmc=24953151; __utmz=24953151.1435106245.3.2.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=%E4%BB%8A%E6%97%A5%E5%A4%B4%E6%9D%A1; _gat=1; sessionid=249d2efbe15e67a4ff000a9ffe489c4e; csrftoken=b3ebed559047fa1cacaccc6ccfb66851; _ga=GA1.2.381297160.1435021810"; // headers.put("Cookie", cookie); params.put("name_or_email", loginName); params.put("password", password); HttpResponse response = HttpUtils.doPost(url, headers, params); List<Cookie> cookies = HttpUtils.getResponseCookies(response); String cookieStr = HttpUtils.setCookie2String(cookies); System.out.println("cookieStr:" + cookieStr); String responseText = HttpUtils.getStringFromResponse2(response, "utf-8"); System.out.println(responseText); return HttpUtils.setCookie2String(cookies); }
获取lastCookie值:
public void publicNewsComment(String cookieStr,String csrfToken) { String url="http://toutiao.com/group/4560598775/post_comment/"; Map<String,String> headers=new HashMap<String,String>(); Map<String, String> params = new HashMap<String, String>(); headers.put("Accept", "application/json, text/javascript, */*; q=0.01"); headers.put("Accept-Language", "zh-CN,zh;q=0.8"); headers.put("Connection", "keep-alive"); headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"); headers.put("Host", "toutiao.com"); headers.put("Origin", "http://toutiao.com"); headers.put("Referer", "http://toutiao.com/a4560598775/"); headers.put("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36"); headers.put("X-CSRFToken", csrfToken); headers.put("X-Requested-With", "XMLHttpRequest"); // cookieStr="uuid=\"w:0256c3403d82490abcc2c7819d48865f\"; tt_webid=3932107506; sessionid=249d2efbe15e67a4ff000a9ffe489c4e; _ga=GA1.2.381297160.1435021810; __utmt=1; utm_source=toutiao; csrftoken=382a7061c9b0b4abe3c4558ad3847df4; __utma=24953151.381297160.1435021810.1435117044.1435124287.5; __utmb=24953151.6.8.1435124301975; __utmc=24953151; __utmz=24953151.1435124287.5.3.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=%E4%BB%8A%E6%97%A5%E5%A4%B4%E6%9D%A1"; // cookieStr="uuid=\"w:0256c3403d82490abcc2c7819d48865f\"; tt_webid=3932107506; sessionid=249d2efbe15e67a4ff000a9ffe489c4e; _ga=GA1.2.381297160.1435021810; __utmt=1; utm_source=toutiao; csrftoken=382a7061c9b0b4abe3c4558ad3847df4; __utma=24953151.381297160.1435021810.1435117044.1435124287.5; __utmb=24953151.6.8.1435124301975; __utmc=24953151; __utmz=24953151.1435124287.5.3.utmcsr=baidu|utmccn=(organic)|utmcmd=organic|utmctr=%E4%BB%8A%E6%97%A5%E5%A4%B4%E6%9D%A1"; // cookieStr=cookieStr+"csrftoken=382a7061c9b0b4abe3c4558ad3847df4;"; headers.put("Cookie", cookieStr); params.put("status", "啊啊啊啊啊!你这么做让释永信大僧脸面何在啊!"); HttpResponse response = HttpUtils.doPost(url, headers, params); System.out.println(response); String responseText =HttpUtils.getStringFromResponse2(response,"utf-8"); System.out.println(responseText); }
运行main方法:
public static void main(String[] args) { LoginTouTiao loginTT = new LoginTouTiao(); String cookieStr = loginTT.doLoginTouTiao2("763197812@qq.com", "123456"); System.out.println(cookieStr); String csrfToken=loginTT.fetchCsrfToken2(cookieStr); cookieStr=cookieStr+";"+csrfToken; String[] ss=csrfToken.split(";"); String s=ss[0]; String[] tokens=s.split("="); String token=tokens[1]; System.out.println(token); SpiderTouTiao2 spider=new SpiderTouTiao2(); spider.publicNewsComment(cookieStr,token); }
相关推荐
用于对接今日头条发布新闻接口,.net版本(4.5.2) 使用注意:自己要到今日头条的管理中心配置数据 https://open.mp.toutiao.com/#/resource?_k=2o14u3 ,然后网站配置文件配置对接数据(详细看ToutiaoApi下的Config...
小程序源码 今日头条 (代码+截图)小程序源码 今日头条 (代码+截图)小程序源码 今日头条 (代码+截图)小程序源码 今日头条 (代码+截图)小程序源码 今日头条 (代码+截图)小程序源码 今日头条 (代码+截图)小程序源码 ...
在今日头条上输入关键词,爬取与关键词相关的新闻各类信息和内容页。
今日头条中文新闻(文本)分类数据集.zip
微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日头条 (源码)微信小程序 今日...
微信小程序——[新闻资讯类]今日头条(截图+源码).zip 微信小程序——[新闻资讯类]今日头条(截图+源码).zip 微信小程序——[新闻资讯类]今日头条(截图+源码).zip 微信小程序——[新闻资讯类]今日头条(截图+...
Android 毕业设计高仿今日头条新闻客户端(内附源码) Android 毕业设计高仿今日头条新闻客户端(内附源码) Android 毕业设计高仿今日头条新闻客户端(内附源码) Android 毕业设计高仿今日头条新闻客户端(内附...
今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条详情页面今日头条...
Android 源码 毕业设计高仿今日头条新闻客户端 App 现有功能: 1.获取各种频道的新闻列表,包括视频和非视频新闻; 2.查看新闻详情,包括视频和非视频新闻的详情; 3.查看新闻评论列表; 4.新闻数据本地存储,已经获取...
软件大小:6.37MB 今日头条3.5.6详细信息 编辑点评:收集热门新闻和你感兴趣的新闻,第一时间发现属于你的头条,...⑥和朋友们分享收藏 关注你的朋友,实时分享彼此收藏的文章和发表的评论 今日头条团队感谢你的使用!
仿今日头条源代码,亲测可用, 开始时会发现缺少一库文件,使用前还要导入我的另一个源码库。
微信小程序demo:今日头条(源代码+截图)微信小程序demo:今日头条(源代码+截图)微信小程序demo:今日头条(源代码+截图)微信小程序demo:今日头条(源代码+截图)微信小程序demo:今日头条(源代码+截图)微信小程序demo...
今日头条中文新闻文本(多层)分类数据集
模仿今日头条的简单实现,主要实现主页及新闻页等页面的实现。 注意:volley需要自己导入哦。
仿今日头条标签栏效果,可以长按进行删除,移动
今日头条38万条新闻数据,可用于文本分类模型训练,可用LSTM模型训练
智者今日头条文章批量采集下载是一款针对今日头条平台进行批量采集文章的软件,支持指定类别采集、关键词采集。支持筛选阅读次数、评论次数、时间,支持多线程下载图片。包括不限于:热点,图片,科技,娱乐,游戏,体育,...
高仿今日头条,网易新闻 有侧滑 选项卡 和增加新闻功能比较多,可以直接用
高仿今日头条新闻资讯手机App网页版HTML5网页模板,下载下来可直接应用于H5版本网站开发,省去切图等前端工作。完整整套网站表态页面,可直接在浏览器中预览静态效果。
仿今日头条小程序样式和少部分功能。【新闻列表残缺版】等全写完了再上完整版……