js & anti craw & crawler spam

demo & X-Sign


, function(t, e, n) {
"use strict";
var r = n(126)
, o = n.n(r)
, i = "WSUDD"
, a = "X"
, s = "/fe_api/";
e.a = {
name: "crawler-spam",
install: function(t, e) {
e.isBrowser && e.http.interceptors.dispatch.use(function(t) {
return t.url.indexOf(s) > -1 && (t.headers["X-Sign"] = function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : a
, r = t.url
, u = void 0 === r ? "" : r
, c = t.params
, f = t.paramsSerializer;
return u = u.slice(u.indexOf(s), u.length),
n === a ? "" + n + o()(e(u, c, f) + i) : ""
}(t, e.http.buildURL)),
t
})
}
}
}
  1. step 1: find crawler spam js file name & get json data

js & XHR

  1. open sources, set break points

js files

  1. debug, find the logic

step by step, look for the roots(溯源)

  1. mock / fake, craw datas

blogs

crawler-spam

https://www.xiaohongshu.com/page/hot

https://www.xiaohongshu.com/explore

https://www.edificeautomotive.com/blog/2016/02/26/ghost-and-crawler-spam/

referral exclusion list

https://support.google.com/analytics/answer/2795830?hl=en

Referral exclusions & 推荐排除

https://www.liquidlight.co.uk/blog/crawler-spam-referrals-how-to-filter-them-out-from-google-analytics/


hack methods

github

https://github.com/topics/xiaohongshu

https://github.com/lonngxiang/xiaohongshu-spider

https://github.com/vinchu/xiaohongshu-2

https://github.com/No-bb-just-do-it/xiaohongshu

npm

pm formula-static/@xhs/launcher



xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


js & anti craw & crawler spam的更多相关文章

  1. Python爬虫学习之爬美女图片

    最近看机器学习挺火的,然后,想要借助业余时间,来学习Python,希望能为来年找一份比较好的工作. 首先,学习得要有动力,动力,从哪里来呢?肯定是从日常需求之中来.我学Python看网上介绍.能通过P ...

  2. 打包python脚本为exe的坎坷经历, by pyinstaller方法

    打包python脚本为exe的坎坷经历, by pyinstaller方法 又应验了那句歌词. 不经历风雨, 怎么见得了彩虹. 安装过程略去不提, 仅提示: pip install pyinstall ...

  3. 使用Node.js搭建数据爬虫crawler

    0. 通用爬虫框架包括: (1) 将爬取url加入队列,并获取指定url的前端资源(crawler爬虫框架主要使用Crawler类进行抓取网页) (2)解析前端资源,获取指定所需字段的值,即获取有价值 ...

  4. 基于Node.js的爬虫工具 – Node Crawler

    Node Crawler的目标是成为最好的node.js爬虫工具,目前已经停止维护. 我们来抓取光合新知博客tech栏目中的文章信息.访问http://dev.guanghe.tv/category/ ...

  5. cnblogs blogs backup & node.js crawler

    cnblogs blogs backup & node.js crawler refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访 ...

  6. jQuery验证控件jquery.validate.js使用说明

    官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery plugin: Validation 使用说明 转载 ...

  7. jquery.validate.js插件使用

    jQuery验证控件jquery.validate.js使用说明+中文API 官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-valid ...

  8. jquery.validate.js表单验证

    一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...

  9. 区分PC端与移动端代码,涵盖C#、JS、JQuery、webconfig

    1)C#区分PC端或移动端 using System.Text.RegularExpressions string u = Request.ServerVariables["HTTP_USE ...

随机推荐

  1. 【转载】HTTP 协议详细介绍

    背景 当你在浏览器地址栏敲入"http://www.cnblogs.com/",然后猛按回车,呈现在你面前的,将是博客园的首页了(这真是废话,你会认为这是理所当然的).作为一个开发 ...

  2. 页面切换提速30%!京东商城APP首屏耗时监控及优化实践

    https://mp.weixin.qq.com/s/vIG_x1MWC33HKV1GxalVHg 原创 平台研发朱跃棕等 京东零售技术 2020-12-09 网络接口请求可以从接口结构合理性及多接口 ...

  3. GRPC Health Checking Protocol Unavailable 14

    https://github.com/grpc/grpc/blob/master/doc/health-checking.md GRPC Health Checking Protocol Health ...

  4. 前序遍历 排序 二叉搜索树 递归函数的数学定义 return 递归函数不能定义为内联函数 f(x0)由f(f(x0))决定

    遍历二叉树   traversing binary tree 线索二叉树 threaded binary tree 线索链表 线索化 1. 二叉树3个基本单元组成:根节点.左子树.右子树 以L.D.R ...

  5. vuex有哪几种属性

    有五种,分别是 State. Getter.Mutation .Action. Modulestate => 基本数据(数据源存放地)getters => 从基本数据派生出来的数据muta ...

  6. js控制页面元素值

    // TODO id 定位 var ele1 = document.getElementById("test1"); // alert(ele1.value) // TODO 根据 ...

  7. 慕课网金职位 Java工程师2020 百度网盘下载

    百度网盘链接:https://pan.baidu.com/s/1xshLRO3ru0LAsQQ0pE67Qg 提取码:bh9f 如果失效加我微信:610060008[视频不加密,资料代码齐全,超清一手 ...

  8. LOJ10202樱花——数论

    题目描述 原题来自:HackerRank Equations 求不定方程: 1/x+1/y=1/n! 的正整数解 (x,y) 的数目. 输入格式 一个整数 n . 输出格式 一个整数,表示有多少对 ( ...

  9. 同时执行多个$.getJSON() 出现数据混乱的问题的解决

    $.getJSON() $.getJSON( url [, data ] [, success(data, textStatus, jqXHR) ] ) url是必选参数,表示json数据的地址: d ...

  10. 反弹SHELL介绍及原理

    如果我们需要到服务器上执行 Shell 命令,但是因为防火墙等原因,无法由客户端主动发起连接的情况,就可以使用反弹 Shell 来满足登陆和操作的需求. 什么是反弹Shell 正常情况下,我们登陆服务 ...