如果你在用一个叫做 V2EX Plus 的插件,我需要你的帮助

2023-05-14 10:22:43 +08:00
 Livid
这件事情的上下文:

https://www.v2ex.com/t/939486?p=1



及我在第二页的回复:

https://www.v2ex.com/t/939486?p=2

我需要一些这个爬虫在执行分布式爬取任务时的样本,主要是 Request Headers 及其他特征。

谢谢。
17661 次点击
所在节点    V2EX
39 条回复
ZE3kr
2023-05-14 10:48:47 +08:00
表面上是爬取,实际上这个对于站长而言已经是 DDOS 了
goophy
2023-05-14 11:05:33 +08:00
without cookie:
```:Authority:
v2ex.com
:Method:
GET
:Path:
/t/779533?p=1
:Scheme:
https
Accept:
*/*
Accept-Encoding:
gzip, deflate, br
Accept-Language:
en,en-US;q=0.9,zh-CN;q=0.8,zh;q=0.7
Cookie:
----- removed ------
Referer:
https://v2ex.com/t/939839
Sec-Ch-Ua:
"Google Chrome";v="113", "Chromium";v="113", "Not-A.Brand";v="24"
Sec-Ch-Ua-Mobile:
?0
Sec-Ch-Ua-Platform:
"macOS"
Sec-Fetch-Dest:
empty
Sec-Fetch-Mode:
cors
Sec-Fetch-Site:
same-origin
Sec-Gpc:
1
User-Agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Version:
1.0.1
```
zyronon
2023-05-14 11:12:55 +08:00
# General

Request URL: https://vdaily.huguotao.com/api/topic/task

Request Method: GET

Status Code: 200 OK

Remote Address: [::1]:7890

Referrer Policy: unsafe-url

# Response Headers

access-control-allow-credentials: true

access-control-allow-origin: *

Connection: keep-alive

Content-Encoding: br

Content-Type: application/json

Date: Sun, 14 May 2023 03:10:16 GMT

Server: nginx

Transfer-Encoding: chunked

Vary: Accept-Encoding

# Request Headers

Accept: */*

Accept-Encoding: gzip, deflate, br

Accept-Language: zh-CN,zh;q=0.9,tr;q=0.8

Connection: keep-alive

DNT: 1

Host: vdaily.huguotao.com

Origin: https://www.v2ex.com

Referer: https://www.v2ex.com/t/939839

sec-ch-ua: "Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"

sec-ch-ua-mobile: ?0

sec-ch-ua-platform: "Windows"

Sec-Fetch-Dest: empty

Sec-Fetch-Mode: cors

Sec-Fetch-Site: cross-site

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36

version: 1.0.1

响应:

{"sign":"646050aa1b3e3ac3cf9c973f","id":781872,"page":1,"url":"/t/781872?p=1"}
hamjin
2023-05-14 11:14:54 +08:00
zyronon
2023-05-14 11:18:08 +08:00


zyronon
2023-05-14 11:19:18 +08:00
没办法,只能传图了,请不要每个回复都 spamming....
zyronon
2023-05-14 11:23:52 +08:00
1 、进入帖子详情后,会发起 /api/topic/task 这个请求,返回值是{"sign":"646052931b3e3ac3cf9cd9f3","id":785109,"page":1,"url":"/t/785109?p=1"}

2 、根据上面返回值里面的 url 。去请求帖子

3 、将帖子内容提交到 api/topic/info?task=hash 值,这个接口。提交的内容是:
{"spiderTime":"2023-05-14T03:20:43.107Z","id":937772,"name":"求问:已有 HomeASSistant ,选什么智能家居终端设备好?","node":"问与答","author":"MFWT","avatar":"https://cdn.v2ex.com/avatar/e8fd/8801/595319_xlarge.png?m=1679882347","date":"2023-05-06T02:28:34.000Z","reply":26,"vote":0,"click":1235,"collect":22,"thank":0,"score":2155,"content":"<div class=\"markdown_body\"><h2>背景</h2>\n<p>软路由装了 HA ,而且全屋无压力 2.4G WiFi 覆盖,打算折腾下智能家居</p>\n<p>这台机器比较特殊,<strong>板载六串口(四个全功能+两个三针)</strong>,而且手头有一个吃灰的 MOXA NPort 5110 串口服务器,所以不管接入什么设备都比较方便</p>\n<p>题中的『终端设备』指的是<strong>被控设备</strong>,比如智能插座,智能门磁,智能温度传感器什么的。</p>\n<p>看过网上的选择,比较倾向于米家设备和博联。<br>\n 但是米家的话,不知道接入 HA 麻不麻烦(听说米家也开始封闭生态,比较难拿到 Key 了,不确定是不是真的)<br>\n 至于博联,似乎没有找到 HA 支持的设备( HA 是支持不少博联的设备,但是某宝一看,对上型号的不多) </p>\n<h2>问题</h2>\n<ol>\n<li>目前的话,推荐什么品牌的终端设备接入 HA 比较好?(最好是便宜些的,可选种类多些的)</li>\n<li>终端设备和 HA 用什么方式连接( WiFi ,Zigbee 还是蓝牙)比较好?(拒绝 433 ,因为我房间有 433 业余电台,而且 433 设备理论上也是违规的)</li>\n<li>有没有什么坑要避免的?</li>\n</ol>\n<p>谢谢</p>\n</div>","append":[],"replys":[]}
zyronon
2023-05-14 11:32:35 +08:00


一直在请求。如图,7 分钟内请求了 23 次,差不多 20 秒请求一次
sciooga
2023-05-14 11:43:57 +08:00
借楼一下,我是扩展作者,针对这个事情专门发了个主题来解释说明 /t/939852

另外这是个非盈利项目,大家也是讲道理的开发,站长提出要求之前我们就已经停止了历史主题爬取了,搜集爬虫的 Request Headers 可能很难分辨是否是扩展的请求,所以还是最好的方式也是我们来关闭,后续扩展会永久关闭历史主题的爬取功能。
ye4241
2023-05-14 12:02:23 +08:00
刚刚发现,这个插件似乎把 V2EX 的 cookie 上传到了服务器的,然后“最近查看过的主题”里面全是自己没看过的主题。。。

关闭插件里面的不让 vDaily ,卸载插件是没有用的,必须要重新退出登录让老 cookie 失效才能真正不让他爬虫的。
ryd994
2023-05-14 12:07:52 +08:00
@zyronon 你可以像楼上的一样,用 pastebin 。原始文本比截图更有效
luckykev1n
2023-05-14 12:08:18 +08:00
@ye4241 直接上传 cookie 也泰裤辣
ajaxgoldfish
2023-05-14 12:17:03 +08:00
@sciooga #9 和站长好好沟通澄清下误会,我倒是感觉没什么
sobigfish
2023-05-14 12:21:03 +08:00
它用的是用户的浏览器,特征几乎不能判定吧,建议直接找 chrome 和 edge 商店吧-。-
yolee599
2023-05-14 12:28:55 +08:00
在 V2EX 动小心思就是在挑衅程序员群体
lower
2023-05-14 12:34:31 +08:00
这么多年了我才知道,头像下面那个进度条是活跃度信息啊,我一直是白的,还没注意到过……😂
sciooga
2023-05-14 12:35:54 +08:00
@ye4241 #10
@luckykev1n #12

是否会上传 cookie 请不要推测,我已经在我的主题内说明了,你看到的表现是获取历史主题导致的。
Livid
2023-05-14 13:02:22 +08:00
根据我刚才在虚拟机里的测试结果,只要停在 /t/ 页面上,就会一直从你的服务器上持续获取抓取任务,并不像你说的,至多获得额外的 3 个抓取任务。大家也可以来验证一下。

屏蔽规则已经部署,可能会产生误伤,欢迎大家的反馈。
SunsetShimmer
2023-05-14 13:14:57 +08:00
@Livid #18 使用 https://github.com/zyronon/v2ex-script 时,“弹框显示帖子正文和回复”功能触发 403 ,回复功能触发 403 。
sciooga
2023-05-14 13:17:21 +08:00
@Livid https://github.com/sciooga/v2ex-plus/blob/master/spider/index.js#L184

实在抱歉,我在动车上,检查了代码是我这里的判断出错了,times-- 变为负数后布尔值又变成 True 了,是我的问题

目前这部分代码只会请求我们的服务器,服务器返回的是空值,所以不会请求 V 站了,后续需要通过更新扩展移除掉这些请求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/939839

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX