b站评论爬取
var userData = {};
var startPage = 0;
var endPage = 0;
var startTime = "";
var endTime = "";
var pickSum = 0;
var dateItem = new Date();
function StartDraw(_startPage, _endPage, _startTime, _endTime, _pickSum)
{
startPage = _startPage;
endPage = _endPage;
startTime = _startTime;
endTime = _endTime;
pickSum = _pickSum;
GetUserData();
}
function GetUserData()
{
GetOneData(startPage, endPage);
}
function callback(data)
{
}
function GetOneData(page, maxPage)
{
urlLocationParams = window.location.pathname.split("/");
avID = urlLocationParams[urlLocationParams.length - 1].split("av")[1];
var url = "https://api.bilibili.com/x/v2/reply?callback=callback&jsonp=jsonp&pn=" + page + "&type=1&oid=" + avID + "&sort=0&_=" + dateItem.getTime();
$.ajax({
url: url,
type: 'get',
dataType: 'jsonp',
jsonpCallback: 'callback',
success: function (data) {
console.log(data);
for (var j = 0; j < data.data.replies.length; j++) {
var reply = data.data.replies[j];
if (reply.ctime >= get_unix_time_stamp(startTime)
&& reply.ctime < get_unix_time_stamp(endTime)) {
userData[reply.mid] = {};
userData[reply.mid].uid = reply.mid;
userData[reply.mid].floor = reply.floor;
userData[reply.mid].name = reply.member.uname;
userData[reply.mid].content = reply.content.message;
}
}
page += 1;
if (page <= maxPage)
{
GetOneData(page, maxPage)
}
else
{
PickUser();
}
}
});
}
function PickUser()
{
userList = [];
for (var user in userData)
{
userList.push(user);
}
shuffle(userList);
for (var i = 0; i < pickSum; i++)
{
console.log(userData[userList[i]])
}
}
function get_unix_time_stamp(strtime)
{
if (strtime) {
var date = new Date(strtime);
} else {
var date = new Date();
}
time = date.getTime() / 1000;
return time;
}
function shuffle(array) {
length = array.length;
for (var index = 0; index < array.length; index++)
{
var temp = array[index];
var changeIndex = RandomNumBoth(0, length - 1);
array[index] = array[changeIndex];
array[changeIndex] = temp;
}
}
function RandomNumBoth(Min,Max){
var Range = Max - Min;
var Rand = Math.random();
var num = Min + Math.round(Rand * Range);
return num;
}
b站评论爬取的更多相关文章
- quotes 整站数据爬取存mongo
安装完成scrapy后爬取部分信息已经不能满足躁动的心了,那么试试http://quotes.toscrape.com/整站数据爬取 第一部分 项目创建 1.进入到存储项目的文件夹,执行指令 scra ...
- B站弹幕爬取
B站弹幕爬取 单个视频弹幕的爬取 B站弹幕都是以xml文件的形式存在的,而xml文件的请求地址是如下形式: http://comment.bilibili.com/233182992.xml ...
- Java爬虫——B站弹幕爬取
如何通过B站视频AV号找到弹幕对应的xml文件号 首先爬取视频网页,将对应视频网页源码获得 就可以找到该视频的av号aid=8678034 还有弹幕序号,cid=14295428 弹幕存放位置为 h ...
- B站弹幕爬取 / jieba分词 - 全站第一的视频弹幕都在说什么?
前言 本次爬取的视频av号为75993929(11月21的b站榜首),讲的是关于动漫革命机,这是一部超魔幻现实主义动漫(滑稽),有兴趣的可以亲身去感受一下这部魔幻大作. 准备工作 B站弹幕的爬取的接口 ...
- B站自动爬取器并制作词云
效果 词云展示 弹幕展示 爬取弹幕过程 基本步骤 1.寻找视频url 2.构造请求头 3.寻找弹幕地址 4.根据弹幕地址运用正则或xpath爬取 寻找B站视频的url 制作请求头 headers = ...
- Scrapy:腾讯招聘整站数据爬取
项目地址:https://hr.tencent.com/ 步骤一.分析网站结构和待爬取内容 以下省略一万字 步骤二.上代码(不能略了) 1.配置items.py import scrapy class ...
- 爬虫第六篇:scrapy框架爬取某书网整站爬虫爬取
新建项目 # 新建项目$ scrapy startproject jianshu# 进入到文件夹 $ cd jainshu# 新建spider文件 $ scrapy genspider -t craw ...
- 萌新学习Python爬取B站弹幕+R语言分词demo说明
代码地址如下:http://www.demodashi.com/demo/11578.html 一.写在前面 之前在简书首页看到了Python爬虫的介绍,于是就想着爬取B站弹幕并绘制词云,因此有了这样 ...
- 票房和口碑称霸国庆档,用 Python 爬取猫眼评论区看看电影《我和我的家乡》到底有多牛
今年的国庆档电影市场的表现还是比较强势的,两名主力<我和我的家乡>和<姜子牙>起到了很好的带头作用. <姜子牙>首日破 2 亿,一举刷新由<哪吒之魔童降世&g ...
随机推荐
- [luogu3178][bzoj4034][HAOI2015]树上操作
题目描述 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 :把某个节点 x 为根的子树中所有点的点权都增 ...
- React Native——组件FlatList
属性 添加头部组件 ListHeaderComponent属性用来给FlatList添加头部组件 简单使用: //ES6之前写法 _header = function () { return ( &l ...
- CodeForces - 669D
题目链接:http://codeforces.com/problemset/problem/669/D Little Artem is fond of dancing. Most of all dan ...
- docker的网络模式
记性不好,回顾一下.按照惯例,直接看官文. Docker's networking subsystem is pluggable, using drivers. Several drivers exi ...
- Azure KeyVault设置策略和自动化添加secrets键值对
一. 关于Azure Key Vault Azure 密钥保管库可帮助保护云应用程序和服务使用的加密密钥和机密. 借助 Key Vault,可使用密钥来加密密钥和机密(例如身份验证密钥.存储帐户密钥. ...
- SpringMvc的Url映射和传参案例
Springmvc的基本使用,包括url映射.参数映射.页面跳转.ajax和文件上传 以前学习的时候写的代码案例,今天整理笔记的时候找到了,很久没有来园子了,发上来当个在线笔记用吧,免的时间长了又忘了 ...
- 一不小心用oracle关键子创建了表,如何修改
一不小心将备注字段建成了ORACLE的关键子COMMENT. 用下面的语句修改成NOTES ------------------------------------------------------ ...
- 学习windows编程 day4 之 绘制随机矩形和peekMessage
#include <windows.h> #include <strsafe.h> LRESULT CALLBACK WndProc(HWND hwnd, UINT messa ...
- 枚举专项练习_Uva725(Division)_Uva11059(Maximun Product)
//Uva725 #include <iostream> #include <cstring> #include <cstdlib> #include <cs ...
- Centos7系统初始化脚本
前言: 因公司业务增加,陆续新增服务器,时不时的来几台,手动地一台台对服务器初始化操作感觉太麻烦. 于是乎,根据初始化需求整合了一个初始化脚本,实现批量脚本初始化操作. 说明: 本脚本根据自身需求编写 ...