Git Product home page Git Product logo

wechat_spider's Introduction

wechat_spider

NPM version David Status

【提醒】此抓取工具因为微信 api 修改无法跑通,请参考代码思路。


 创造不息,交付不止

这个项目是使用打理的方式抓取微信公众账号文章,首先你需要了解一下现在抓取微信公众账号的两种主流方法,请参考我的文章:

如何优雅的抓取微信公众号历史文章

所以现在一般有两种做法,一种通过搜狗微信,一种通过代理的方式抓取,这个项目就是使用代理的方式抓取。

我本来是写了更复杂的工具,使用 Node.js 的 anyproxy 加上 php 的 Laravel 框架,完成这些功能,但是某天洗澡的时候终于想通了,我其实把一个工具复杂化了,这个工具本来是很简单的,我给一位媒体朋友指导了一下,他也很快就用起来了。

输出

输出有两个东西,一个是 wechat.sqlite,一个是 wechat.csv,wechat.csv 需要通过命令 wechat_spider csv 来生成。

如下是我的公众账号对应的数据:

file

表格头解释:

accountName: 公众号名称
author: 作者
title: 文章标题
contentUrl: 文章链接
cover: 文章封面图
digest: 文章摘要
idx: 如果是1,代表的是当天第一篇文章,如果是2,代表当天第二篇文章,以此类推。
sourceUrl: 阅读原文对应的链接
createTime: 文章创建时间
readNum: 阅读数
likeNum: 点赞数
rewardNum: 赞赏数
electedCommentNum: 被选择显示的回复数

安装

安装 Node.js

通过网站 https://nodejs.org/zh-cn/ 下载最新版本。

安装 Python 2.x 等编译环境依赖

因为里面依赖 sqlite,通过 node-gyp 编译的过程中需要 python 2.x (3.x 不行) 以及 VCBuild.exe ,所以 Windows 的同学一定要安装一下,否则会出错。

Windows 用户通过在具有管理员权限的 PowerShell 下输入 npm install --global --production windows-build-tools 下载安装编译环境依赖。

测试 Node 和 Python 安装正确

Mac 在终端下,Windows 在 cmd 下:

$ npm -v
4.3.0

$ python
Python 2.7.6 (default, Nov 18 2013, 15:12:51)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

如果输出以上类似的信息,证明工具已经安装好了。

安装 wechat_spider

$ npm install wechat_spider -g

测试 wechat_spider 安装正确

$ wechat_spider --help

  Usage: wechat_spider [options]

  Options:

    -h, --help     output usage information
    -V, --version  output the version number

如果输出以上类似信息,证明 wechat_spider 已经安装成功

使用

使用分四步,开启代理,手机设置代理,查看公众账号历史记录,接下来就开始自动抓取了,最后生成 csv。

首次打开需要安装证书

第一步:Mac 在终端下,Windows 在 cmd 下打开工具:

$ wechat_spider

首次需要信任证书。

默认会打开证书的文件夹,如果没有打开,浏览器打开 http://localhost:8002/fetchCrtFile ,也能获取rootCA.crt文件,获取到根证书后,双击,根据操作系统提示,信任rootCA:

  • Windows
    • https://t.alipayobjects.com/tfscom/T1D3hfXeFtXXXXXXXX.jpg_700x.jpg
  • Mac
    • https://t.alipayobjects.com/tfscom/T1NwFfXn0oXXXXXXXX.jpg_400x.jpg

第二步:使用手机代理:

  • 首次手机需要安装证书,浏览器打开:http://localhost:8002/qr_root ,使用微信扫描二维码,[重要] 用浏览器打开:

  • 然后获取到你电脑的 IP 地址,假设是 192.168.1.5

  • 设置手机代理为电脑:

第三步:选择一个微信公众号,点击查看历史记录

第四步:等待出现页面“一个公众号采集完成”,就可以生成 csv 了

 $ wechat_spider csv

打赏

我是金马,一个想搞点事情的程序员。如果这个小工具对你有帮助,你可以请我喝杯咖啡,谢谢 :)

LICENSE

MIT.

wechat_spider's People

Contributors

aufree avatar cxgreat2014 avatar lijinma avatar qiwihui avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wechat_spider's Issues

历史文章列表页面反复刷新,查看shell出现如下错误

Unhandled rejection SequelizeUniqueConstraintError: Validation error at Query.formatError (/usr/local/lib/node_modules/wechat_spider/node_modules/sequelize/lib/dialects/sqlite/query.js:337:14) at Statement.afterExecute (/usr/local/lib/node_modules/wechat_spider/node_modules/sequelize/lib/dialects/sqlite/query.js:112:29) at Statement.replacement (/usr/local/lib/node_modules/wechat_spider/node_modules/sqlite3/lib/trace.js:19:31)

您好,因微信改版报错的问题,是否有计划修复呢?

Unhandled rejection SequelizeUniqueConstraintError: Validation error
at Query.formatError (/usr/local/lib/node_modules/wechat_spider/node_modules/_sequelize@3.31.1@sequelize/lib/dialects/sqlite/query.js:337:14)
at Statement.afterExecute (/usr/local/lib/node_modules/wechat_spider/node_modules/_sequelize@3.31.1@sequelize/lib/dialects/sqlite/query.js:112:29)
at Statement.replacement (/usr/local/lib/node_modules/wechat_spider/node_modules/[email protected]@sqlite3/lib/trace.js:19:31)

WebSocket will not work

➜ wechat_spider git:(master) bin/wechat_spider
the default rule for AnyProxy.
Anyproxy rules initialize finished, have fun!
The WebSocket will not work properly in the https intercept mode :(
GUI interface started at : http://192.168.1.205:8002/
Http proxy started at 192.168.1.205:8001

received https CONNECT request mp.weixin.qq.com
==>will forward to local https server
[internal https]proxy server for mp.weixin.qq.com established

执行报错

请教下,执行:$ npm install wechat_spider -g这一步的时候报错,是什么原因:
MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装 .NET Framework 2.0 SDK;2) 安装 Microsoft Visual Studio 2005;
或 3) 如果将该组件安装到了其他位置,请
将其位置添加到系统路径中。 [C:\Users\ningshanzhai\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv\build\binding.sln]

抓取运行时报错

错误信息:
Unhandled rejection SequelizeUniqueConstraintError: Validation error at Query.formatError (/Users/Cybs/.nvm/versions/node/v4.4.5/lib/node_modules/wechat_spider/node_modules/.3.30.4@sequelize/lib/dialects/sqlite/query.js:337:14) at Statement.afterExecute (/Users/Cybs/.nvm/versions/node/v4.4.5/lib/node_modules/wechat_spider/node_modules/.3.30.4@sequelize/lib/dialects/sqlite/query.js:112:29) at Statement.replacement (/Users/Cybs/.nvm/versions/node/v4.4.5/lib/node_modules/wechat_spider/node_modules/.3.1.8@sqlite3/lib/trace.js:19:31)

运行环境mac,虽然报错了,但是在执行目录下生成了wechat.sqlite文件。

安装报错

`C:\WINDOWS\system32> npm install --global --production windows-build-tools

[email protected] postinstall D:\dev_soft\nodejs\node_modules\node_global\node_modules\windows-build-tools
node ./dist/index.js

Downloading vs_BuildTools.exe
[> ] 0.0% (0 B/s)
Downloaded vs_BuildTools.exe. Saved to C:\Users\12121.windows-build-tools\vs_BuildTools.exe.

Starting installation...
Launched installers, now waiting for them to finish.
This will likely take some time - please be patient!

Status from the installers:
---------- Visual Studio Build Tools ----------
Successfully installed Visual Studio Build Tools.
------------------- Python --------------------
Python 2.7.16 is already installed, not installing again.

Now configuring the Visual Studio Build Tools..

All done!

PS C:\WINDOWS\system32> npm install wechat_spider -g
D:\dev_soft\nodejs\node_modules\node_global\wechat_spider -> D:\dev_soft\nodejs\node_modules\node_global\node_modules\wechat_spider\bin\wechat_spider

[email protected] install D:\dev_soft\nodejs\node_modules\node_global\node_modules\wechat_spider\node_modules\iconv
node-gyp rebuild

D:\dev_soft\nodejs\node_modules\node_global\node_modules\wechat_spider\node_modules\iconv>if not defined npm_config_node_gyp (node "D:\dev_soft\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "D:\dev_soft\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! UNCAUGHT EXCEPTION
gyp ERR! stack Error: spawn D:\dev_soft\vs2019\MSBuild\15.0\Bin\MSBuild.exe ENOENT
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:232:19)
gyp ERR! stack at onErrorNT (internal/child_process.js:407:16)
gyp ERR! stack at process._tickCallback (internal/process/next_tick.js:63:19)
gyp ERR! System Windows_NT 10.0.17763
gyp ERR! command "D:\dev_soft\nodejs\node.exe" "D:\dev_soft\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd D:\dev_soft\nodejs\node_modules\node_global\node_modules\wechat_spider\node_modules\iconv
gyp ERR! node -v v10.13.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! This is a bug in node-gyp.
gyp ERR! Try to update node-gyp and file an Issue if it does not help:
gyp ERR! https://github.com/nodejs/node-gyp/issues
npm ERR! code ELIFECYCLE
npm ERR! errno 7
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 7
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! D:\dev_soft\nodejs\node_modules\node_cache_logs\2019-08-01T10_30_47_055Z-debug.log
PS C:\WINDOWS\system32>
`

历史消息页 - 有一种URL形式未妥善处理 - 自动翻页问题

针对 issue #4 的 Post 表单 row 重复问题,我做了一些尝试

我定位到问题了。微信文章的历史消息页面,有两种URL形式。

咱们的爬虫,在处理如下两种URL时,没有做出合理的反应:

GET /mp/profile_ext?action=home&__biz=MzA4OTUxODkwNA==&scene=124&devicetype=android-22&version=26050732&lang=zh_CN&nettype=WIFI&a8scene=3&pass_ticket=ZcyupxQiYOed%2FrUckgW%2B2QXOlTXKNPez3M5NzaGzVuVqI%2FhgmTXVtSLjk7gynhlD&wx_header=1 HTTP/1.1

GET /mp/profile_ext?action=getmsg&__biz=MzA4OTUxODkwNA==&f=json&frommsgid=1000000053&count=10&scene=124&is_ok=1&uin=777&key=777&pass_ticket=ZcyupxQiYOed%2FrUckgW%2B2QXOlTXKNPez3M5NzaGzVuVqI%2FhgmTXVtSLjk7gynhlD&wxtoken=&x5=1&f=json HTTP/1.1

因而导致了,在?action=home的时候,拉取了两遍消息,导致后面的翻页流程受到阻塞。

同时,一个更好的翻页流程,应该是模拟下翻页面,而不是做URL拼接

参考:
https://zhuanlan.zhihu.com/p/24350954

在公众号历史界面出现如下错误

Unhandled rejection SequelizeBaseError: Validation error
at Query.formatError (C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\sequelize\l
ib\dialects\sqlite\query.js:337:14)
at Statement.afterExecute (C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\sequel
ize\lib\dialects\sqlite\query.js:112:29)
at Statement.replacement (C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\sqlite3
\lib\trace.js:19:31)

获取不到阅读数、点赞数、评论数

我看到之前有个issue是说只是获取10篇文章,但我运行代码后是能获取所有文章,但因为获取不到阅读数、点赞数、评论数,所以出现了和之前issue里面一样的错误
Unhandled rejection SequelizeUniqueConstraintError: Validation error

执行wechat_spider csv提示错误

在手机上点击完“查看历史记录”后,会报出很多的Unhandled rejection SequelizeBaseError: Validation error,然后就把程序CTRL+C了,随后执行wechat_spider csv,就会报如下的错误
Executing (default): SELECT id, biz, appmsgid, accountName, author, title, cover, contentUrl, digest, idx, sourceUrl, createTime, readNum, likeNum, rewardNum, electedCommentNum, createdAt, updatedAt FROM posts AS Post;
Unhandled rejection Error: Illegal character sequence.
at errnoException (/usr/local/lib/node_modules/wechat_spider/node_modules/iconv/lib/iconv.js:175:13)
at Object.convert (/usr/local/lib/node_modules/wechat_spider/node_modules/iconv/lib/iconv.js:147:15)
at Iconv.convert (/usr/local/lib/node_modules/wechat_spider/node_modules/iconv/lib/iconv.js:64:12)
at /usr/local/lib/node_modules/wechat_spider/lib/csv.js:63:26
at Array.forEach (native)
at Model. (/usr/local/lib/node_modules/wechat_spider/lib/csv.js:36:11)
at Model.tryCatcher (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/promise.js:512:31)
at Promise._settlePromise (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/promise.js:569:18)
at Promise._settlePromise0 (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/promise.js:614:10)
at Promise._settlePromises (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/promise.js:693:18)
at Async._drainQueue (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/async.js:133:16)
at Async._drainQueues (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/usr/local/lib/node_modules/wechat_spider/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)

求一个正确安装姿势。。

windows 7
node:v6.3.1
npm:4.4.4
python:2.7.13
vs2017 已经可以正常运行c++项目
windows 8.1 sdk也已经安装了
以下是报错信息:
C:\Users\Administrator\AppData\Roaming\npm\wechat_spider -> C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\bin\wechat_spider

[email protected] install C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv
node-gyp rebuild

C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv>if not defined npm_config_node_gyp (node "C:\Users\Administrator\AppData\Roaming\npm\node_modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )
在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。
MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装 .NET Framework 2.0 SDK;2) 安装 Microsoft Visual Studio 2005;或 3) 如果将该组件安装到了其他位置,请将其位置添加到系统路径中。 [C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv\buil
d\binding.sln]
gyp ERR! build error
gyp ERR! stack Error: C:\windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\Administrator\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "E:\node.js\node.exe" "C:\Users\Administrator\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\Administrator\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv
gyp ERR! node -v v6.3.1
gyp ERR! node-gyp -v v3.5.0
gyp ERR! not ok
C:\Users\Administrator\AppData\Roaming\npm
`-- (empty)

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the iconv package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs iconv
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls iconv
npm ERR! There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Administrator\AppData\Roaming\npm-cache_logs\2017-04-10T08_33_49_620Z-debug.log

关于微信api修改的问题

您好:

最近是不是微信API修改了,anyproxy感觉已经看不到什么有效的信息了. 请问现在有什么思路或者方法嘛?希望可以指点一下。

win10 反复安装出错

win10 64位
已成功安装node和python
win10sdk也安装了,现在正在下载8.1SDk。我也是醉了
把代码克隆下来,安装出错
利用global安装,还是有问题,
[就想问,Windows这么渣吗,还是我人比较渣[]
global
local

求大神指点迷津。已经废寝忘食2天。

Please install sqlite3 package manually

ubuntu16
安装wechat_spider后
尝试安装
sudo npm install sqlite3 -g
输出

[email protected] install /usr/local/lib/node_modules/sqlite3
node-pre-gyp install --fallback-to-build

node-pre-gyp ERR! Tried to download(undefined): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.8/node-v51-linux-x64.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v51 ABI) (falling back to source compile with node-gyp)
make: Entering directory '/usr/local/lib/node_modules/sqlite3/build'
ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep Release/obj/gen/sqlite-autoconf-3150000/sqlite3.c
TOUCH Release/obj.target/deps/action_before_build.stamp
CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o
AR(target) Release/obj.target/deps/sqlite3.a
COPY Release/sqlite3.a
CXX(target) Release/obj.target/node_sqlite3/src/database.o
../src/database.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE node_sqlite3::Database::New(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/database.cc:133:96: warning: ‘bool v8::Object::ForceSet(v8::Localv8::Value, v8::Localv8::Value, v8::PropertyAttribute)’ is deprecated: Use CreateDataProperty / DefineOwnProperty [-Wdeprecated-declarations]
orceSet(Nan::New("filename").ToLocalChecked(), info[0].As(), ReadOnly);
^
In file included from /home/chandi/.node-gyp/7.8.0/include/node/v8.h:26:0,
from /home/chandi/.node-gyp/7.8.0/include/node/node.h:42,
from ../node_modules/nan/nan.h:47,
from ../src/database.h:10,
from ../src/database.cc:4:
/home/chandi/.node-gyp/7.8.0/include/node/v8.h:2956:22: note: declared here
bool ForceSet(Local key, Local value,
^
/home/chandi/.node-gyp/7.8.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^
../src/database.cc:134:86: warning: ‘bool v8::Object::ForceSet(v8::Localv8::Value, v8::Localv8::Value, v8::PropertyAttribute)’ is deprecated: Use CreateDataProperty / DefineOwnProperty [-Wdeprecated-declarations]
.This()->ForceSet(Nan::New("mode").ToLocalChecked(), Nan::New(mode), ReadOnly);
^
In file included from /home/chandi/.node-gyp/7.8.0/include/node/v8.h:26:0,
from /home/chandi/.node-gyp/7.8.0/include/node/node.h:42,
from ../node_modules/nan/nan.h:47,
from ../src/database.h:10,
from ../src/database.cc:4:
/home/chandi/.node-gyp/7.8.0/include/node/v8.h:2956:22: note: declared here
bool ForceSet(Local key, Local value,
^
/home/chandi/.node-gyp/7.8.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginOpen(node_sqlite3::Database::Baton*)’:
../src/database.cc:144:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginClose(node_sqlite3::Database::Baton*)’:
../src/database.cc:230:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginExec(node_sqlite3::Database::Baton*)’:
../src/database.cc:525:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginLoadExtension(node_sqlite3::Database::Baton*)’:
../src/database.cc:625:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
CXX(target) Release/obj.target/node_sqlite3/src/node_sqlite3.o
CXX(target) Release/obj.target/node_sqlite3/src/statement.o
../src/statement.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE node_sqlite3::Statement::New(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/statement.cc:103:74: warning: ‘bool v8::Object::ForceSet(v8::Localv8::Value, v8::Localv8::Value, v8::PropertyAttribute)’ is deprecated: Use CreateDataProperty / DefineOwnProperty [-Wdeprecated-declarations]
info.This()->ForceSet(Nan::New("sql").ToLocalChecked(), sql, ReadOnly);
^
In file included from /home/chandi/.node-gyp/7.8.0/include/node/v8.h:26:0,
from /home/chandi/.node-gyp/7.8.0/include/node/node.h:42,
from ../src/statement.cc:2:
/home/chandi/.node-gyp/7.8.0/include/node/v8.h:2956:22: note: declared here
bool ForceSet(Local key, Local value,
^
/home/chandi/.node-gyp/7.8.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator attribute((deprecated(message)))
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginPrepare(node_sqlite3::Database::Baton*)’:
../src/statement.cc:118:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
In file included from ../src/statement.cc:6:0:
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginBind(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:322:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Bind);
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginGet(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:370:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Get);
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginRun(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:438:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Run);
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginAll(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:504:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(All);
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginEach(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:601:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Each);
^
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginReset(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^
../src/statement.cc:724:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Reset);
^
SOLINK_MODULE(target) Release/obj.target/node_sqlite3.node
COPY Release/node_sqlite3.node
COPY /usr/local/lib/node_modules/sqlite3/lib/binding/node-v51-linux-x64/node_sqlite3.node
TOUCH Release/obj.target/action_after_build.stamp

这种情况是什么意思?

Unhandled rejection SequelizeUniqueConstraintError: Validation error
at Query.formatError (C:\Users\Administrator\AppData\Roaming\npm\node_module
s\wechat_spider\node_modules\sequelize\lib\dialects\sqlite\query.js:337:14)
at Statement.afterExecute (C:\Users\Administrator\AppData\Roaming\npm\node_m
odules\wechat_spider\node_modules\sequelize\lib\dialects\sqlite\query.js:112:29)

at Statement.replacement (C:\Users\Administrator\AppData\Roaming\npm\node_mo

dules\wechat_spider\node_modules\sqlite3\lib\trace.js:19:31)

CMD里红色显示 这个是什么意思啊?

该代码因微信改版已不可用 我又写了一个js脚本 亲测可用

链接
和本项目用法完全一样,而且稳定性增强、简化去除了本地php服务器,更加方便。
数据存储至MongoDB中
另外其他代码是关于自动化填充公众号id的,如有问题可与我联系
如不需要自动化填充公众号,那么把jstest1.js放至主目录下,然后在终端输入
anyproxy -i --rules ./jstest1.js即可。
欢迎star收藏

查看历史消息页面报错

根据文档配置Mac端以及手机端 证书安装完成。手机端代理手动配置 电脑IP 以及 8001 端口。点击显示历史消息页面 报错

同时手机无法访问网络错误内容:ERR_SSL_PROTOCOL_ERROR

应该是https 的问题 或者说证书安装不成功 (设备查看显示 证书成功安装 Verifed)

image

微信进入历史消息页面,提示网络出错,抓去不了...

按说明文档,一步一步来安装设置的,打开微信历史页面的时候,网络出错,显示不了历史文章信息,终端的信息如下所示:

received https CONNECT request mp.weixin.qq.com
==>will forward to local https server
[internal https]proxy server for mp.weixin.qq.com established

received https CONNECT request mp.weixin.qq.com
==>will forward to local https server
[internal https]proxy server for mp.weixin.qq.com established

received https CONNECT request mp.weixin.qq.com
==>will forward to local https server

received https CONNECT request mp.weixin.qq.com
==>will forward to local https server

这是哪里出错来呢?

安装报错

win10,python2.7.13,npm5.3.0,安装wechat_spider报错:
npm ERR! code EINTEGRITY
npm ERR! sha1-TLz5Zdi5AdGxAVy8f8QVquFX36o= integrity checksum failed when using sha1: wanted sha1-TLz5Zdi5AdGxAVy8f8QVquFX36o= but got sha1-K0CcrROQ/qPGKEXU/Mieg2By58c=. (201768 bytes)
求助,如何破

求错误:MSB4019

在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。
C:\Users\ningshanzhai\AppData\Roaming\npm\node_modules\wechat_spider\node_modules\iconv\b
uild\iconv.vcxproj(20,3): error MSB4019: 未找到导入的项目“C:\Microsoft.Cpp.Default.props
”。请确认 声明中的路径正确,且磁盘上存在该文件。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.