Archive | 网络技术

Tags: ,

wininet,winhttp,xmlhttprequest,ServerXmlHttpRequest各版本区别

Posted on 22 5月 2015 by simon

一、标准API接口WinINet(Microsoft Windows Internet)和WinHTTP(Microsoft Windows HTTP)

实现Http访问,微软提供了二套API:WinINet, WinHTTP(分别封装于system32目录下的wininet.dll和winhttp.dll内)
二者主要区别在于后者更为安全和稳定,可以说WinHTTP是WinINet的升级版
LZ所提的UDF WinHTTP.au3就是直接调用标准接口写成的自定义函数库文件

二、COM对象XMLHttpRequest和WinHttpRequest和ServerXMLHTTPRequest

XMLHttpRequest是基于WinInet封装的,
而WinHttpRequest和ServerXMLHTTPRequest则是基于WinHTTP封装的
所以三者的稳定性属XMLHttpRequest为最差
封装成COM形式主要是为了方便js vbs等脚本的调用,还具有易书写、降低开发难度等许多特点把

三、对象版本和封装位置

1、XMLHttpRequest对象版本和对应的封装dll文件
Microsoft.XMLHTTP 对应 msxml.dll
MSXML2.XMLHTTP 对应 msxml2.dll
MSXML2.XMLHTTP.3.0 对应 msxml3.dll
MSXML2.XMLHTTP.4.0 对应 msxml4.dll
MSXML2.XMLHTTP.5.0 对应 msxml5.dll(此版本是伴随office2007发布的,所以目录下可能找不到该版本的dll)
MSXML2.XMLHTTP.6.0 对应 msxml6.dll
如上各个dll的发布一般都是以补丁的形式发布,win7默认都集成了吧

2、ServerXMLHTTP对象版本和对应的封装dll文件
Msxml2.ServerXMLHTTP 对应 msxml2.dll(win7自带,下同!)
Msxml2.ServerXMLHTTP.3.0 对应 msxml3.dll
Msxml2.ServerXMLHTTP.4.0 对应 msxml4.dll
Msxml2.ServerXMLHTTP.5.0 对应 msxml5.dll
Msxml2.ServerXMLHTTP.6.0 对应 msxml6.dll

3、WinHttpRequest对象
WinHttp.WinHttpRequest.5.1 对应 Winhttp.dll

(如上高版本的通常稳定性会好一点)

四、对象成员(属性、方法、事件等),主要优缺点

XMLRequest成员参考
缺点:和浏览器挂钩,大多情况下会共享cookies,session,不支持单独设置代理
优点:和浏览器挂钩,大多情况下会共享cookies,session

ServerXMLHTTP成员参考
缺点:系统没有对应dll的情况下程序需要外挂一个dll文件
优点:脱离浏览器,使用代理方便

WinHttpRequest成员参考
缺点:暂无
优点:脱离浏览器,使用代理方便

Continue Reading

Comments (0)

Tags: , ,

windows多进程间数据通信:内存映射

Posted on 19 5月 2015 by simon

啥是进程?进程是一个正在运行的程序的实例,主要由两部分组成:(1)一个操作系统用来管理进程的内核对象。(2)创建时系统所分配的资源,主要是内存地址空间。

为啥要了解进程间数据通信?如果需要在多进程运行下进行协同工作,那么就需要掌握该知识。进程间通信是指在多进程环境下,使用的数据交互、事件通知等方法使各进程协同工作。

常用的有4种:消息传递、共享内存、管道、剪贴板:

(1)消息传递:不以进程为界限,处理消息的是窗体(包括子窗体、控件等),而与是否在同一进程无关。
如SendMessage(hwnd,WM_COPYDATA,wParam,lParam); 其中wParam设置为包含数据的窗口的句柄。lParam指向一个COPYDATASTRUCT的结构:
typedef struct tagCOPYDATASTRUCT{
DWORD dwData;//用户定义数据
DWORD cbData;//数据大小
PVOID lpData;//指向数据的指针
};该结构用来定义用户数据。

(2)共享内存:在一个进程内创建内存映射,却能够在其他都个进程中使用。这些进程共享的是物理存储器的同一个页面,在把这些物理内存映射到虚拟内存时各个进程的虚拟地址并不一定相同。当一个进程将数据写入共享内存时,其他进程可以立即获取数据变更情况。

(3)管道和邮槽:其实是对共享内存的两种不同的封装机制。

(4)剪贴板:Windows系统支持剪贴板IPC的基本机制是由系统预留的一块全局共享内存,可用于被各进程暂时存储数据。写入进程首先创建一个全局内存块,并将数据写到该内存块;接受数据的进程通过剪贴板机制获取此内存块的句柄,并完成对该内存块数据的读取。

关于内存映射:如果物理内存只有一份,让这份内存在不同的进程中,映射到各自的虚拟地址空间上,每个进程都可以读取同一份数据,是一种最高效的数据交换方法。

下面开始讲述共享内存映射的方式

首先使用函数CreateFileMapping来创建一个想共享的文件数据句柄,然后使用MapViewOfFile来获取共享的内存地址,然后使用OpenFileMapping函数在另一个进程里打开共享文件的名称,这样就可以实现不同的进程共享数据

比如有A、B两个进程,

1、A进程中调用内存映射API函数CreateFileMapping创建一个有名字标识的共享内存;

CreateFileMapping原型:
HANDLE CreateFileMapping(
HANDLE hFile, //物理文件句柄
LPSECURITY_ATTRIBUTES lpAttributes, //安全设置
DWORD flProtect, //保护设置
DWORD dwMaximumSizeHigh, //高位文件大小
DWORD dwMaximumSizeLow, //低位文件大小
LPCTSTR lpName //共享内存名称
);

2、再调用MapViewOfFile函数来映射本进程的地址空间(MapViewOfFile支持映射一个超过4G大小的文件,但地址空间最大只有 4G,可以通过设置Offset来只映射一部分文件 )

LPVOID WINAPI MapViewOfFile(
__in HANDLE hFileMappingObject,
__in DWORD dwDesiredAccess,
__in DWORD dwFileOffsetHigh,
__in DWORD dwFileOffsetLow,
__in SIZE_T dwNumberOfBytesToMap
);

hMemFile = CreateFileMappingA (-1, 0, 4, 0, 文本长度, 指针名)’内存文件映射对象
LPSTR = MapViewOfFile (hMemFile, 2, 0, 0, 0) ‘ FILE_MAP_WRITE = 2‘
将待置入的文本写到内存中,用完共享内存,再调用 UnmapViewOfFile 回收内存地址空间UnmapViewOfFile (LPSTR)

3、B进程中读取该内存地址:

hMemFile = OpenFileMappingA (4,True, Lpname)’打开文件映射对象
LPSTR = MapViewOfFile (hMemFile, 4, 0, 0, 0) ‘ FILE_MAP_READ = 4‘MapViewOfFile函数来映射该内存地址
读取指针上数据到文本,再调用UnmapViewOfFile回收内存地址空间UnmapViewOfFile (LPSTR)

 

相关链接:

1、Windows 下的进程间通讯及数据共享:

http://blog.codingnow.com/2005/10/interprocess_communications.html

2、win32下进程间通信——共享内存

http://blog.csdn.net/sszgg2006/article/details/8573348

2、Windows编程专家张静盛指点进程间通信

http://developer.51cto.com/art/200807/82340_all.htm

Comments (0)

Tags: , , ,

VBA宏命令:批量检索替换/修改word中指定多个关键词的格式内容等

Posted on 11 4月 2015 by simon

最近帮别人做一个词性词频统计工具,顺便又有一个小需求:需要在word中设置个宏命令,用来根据本地指定txt(如word.txt)中的多个词语,检索word中所有出现的词语,宏命令需要对这些词加粗/颜色/背景色或者替换成其它内容,突出高亮显示该词。打开word后,只需要按一下快捷键即可自动执行操作。

宏命令简介:即在office中可以进行批量辅助操作的工具,可通过自带的vba编写。其优点是可视化操作、不需要另外开发软件来进行一些小型且有逻辑性的批量处理需求,比较小巧方便。(不是每个需求都要搞个软件出来,效率易用很重要)

当然宏命令有缺点,功能没有一般编程语言那么强大,且因为是vb语法,写起来很dt,而且自动补全竟然还和搜狗输入法冲突,只能通过点击菜单来自动补全,对新手来说,完全没有pycharm中的流畅感。。。还好学习成本不高,研究一会儿大致就能鼓捣个功能出来。

VBA其实并不复杂,门槛比较低,刚接触这块可能会比较陌生,推荐下我的快速学习方法,直接在word中录制宏,随便执行几个操作,然后在vba里查看脚本的代码,分析一下语法,需要什么功能谷歌一下不要用百度,找找差不多代码了解下原理基本就OK了。

好了,脚本如下,有此类需求的可以拿去直接修改修改就能用了。

脚本说明:其中ActiveDocument.Path是获取doc所在的当前目录;word.txt为存放待查找的词语文件(格式为一行一个);fso为创建的对象,nr为读取txt的文本内容,vbCrLf为vb里规定的回车符+换行符,arr为词语的数组形式,UBound是取数组最大下标,玩过按键精灵的可能比较熟悉,通过arr(i)来定位每一个元素,之后执行一个for循环,设定待查找文本.Text = arr(i),wdReplaceAll全部替换成另外的格式,Selection.Find.Replacement.Font里各参数表示替换后的格式,可以是各种姿势以达到你的需求。

使用方法:直接复制到你的宏命令里,然后在word的自定义功能里,给这个宏添加个快捷键,这样就可以通过快捷键自动执行了。

我这里衍生一下,这个脚本可以衍生成一个文章的“伪原创”工具,比如同义词批量替换,反义词替换等等,只需要设定好要替换的内容。

好了,废话太多了,周末愉快~


Sub 宏1()
'
' 宏1 宏
'
'
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.opentextfile(ActiveDocument.Path + "\word.txt") '打开文件流
nr = f.readall
arr = Split(nr, vbCrLf) '分割数组

 Selection.Find.ClearFormatting
 Selection.Find.Replacement.ClearFormatting
 With Selection.Find.Replacement.Font
 .Bold = True
 .Color = wdColorRed
 End With

Dim i As Long
For i = 0 To UBound(arr)
 With Selection.Find
 .Text = arr(i)
 .Replacement.Text = ""
 .Forward = True
 .Wrap = wdFindContinue
 .Format = True
 .MatchCase = False
 .MatchWholeWord = False
 .MatchByte = True
 .MatchWildcards = False
 .MatchSoundsLike = False
 .MatchAllWordForms = False
 End With

Selection.Find.Execute Replace:=wdReplaceAll
Next

Set fso = Nothing
Set f = Nothing

End Sub

Comments (1)

Tags: , ,

Centos安装Cisco IPSec V-P-N方式

Posted on 25 2月 2015 by simon

环境:centos 6.5 X86_64

更新源:

yum install wget vim -y
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
yum makecache

下载软件:

wget ftp://ftp.pbone.net/mirror/ftp.pramberger.at/systems/linux/contrib/rhel5/x86_64/ipsec-tools-libs-0.8.0-1.el5.pp.x86_64.rpm

wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/aevseev/CentOS_CentOS-6/x86_64/ipsec-tools-0.8.0-25.3.x86_64.rpm

安装依赖包:

yum install openssl098e-0.9.8e-18.el6_5.2.x86_64 -y
yum install compat-openldap-2.3.43-2.el6.x86_64 -y

安装:

rpm -ivh ipsec-tools-libs-0.8.0-1.el5.pp.x86_64.rpm
rpm -ivh ipsec-tools-0.8.0-25.3.x86_64.rpm

Continue Reading

Comments (0)

Tags: , ,

Centos安装L2TP+IPSec完整教程

Posted on 07 2月 2015 by simon

L2TP相比PPTP是另外一种隧道协议方式,部分网络下PPTP无法连接,可以尝试L2TP,一般而言在PC上,两者使用体验没什么不同,技术原理上的不同请参照这里.

建议PC电脑上优先使用PPTP,无法使用可以尝试L2TP,移动端推荐使用L2TP;

安装方式:

一、一键脚本安装(推荐,安装简单)

安装的软件包版本分别是openswan-2.6.38、xl2tpd-1.2.4

VPS是需要基于Xen或KVM的。

注意:基于 OpenVZ 虚拟化技术的 VPS 需要开启TUN/TAP才能正常使用,购买 VPS 时请先咨询服务商是否支持开启 TUN/TAP。

检测是否支持TUN模块

执行命令:

cat /dev/net/tun

如果返回信息为:cat: /dev/net/tun: File descriptor in bad state 说明正常

检测是否支持ppp模块

执行命令:

cat /dev/ppp

如果返回信息为:cat: /dev/ppp: No such device or address 说明正常

开始安装:终端里运行以下命令(以root用户运行):

cd /root
wget http://lamp.teddysun.com/files/l2tp.sh #CentOS、Fedora或Redhat系统时执行
wget http://lamp.teddysun.com/files/l2tp_ubuntu.sh #Ubuntu系统时执行此命令
chmod +x *.sh
./l2tp.sh #CentOS、Fedora或Redhat系统时执行
./l2tp_ubuntu.sh #Ubuntu系统时执行此命令</p>

等待出现
「Please input IP-Range:」设置网段,一般回车即可
「Please input PSK:」设置你预共享密钥。

执行后,一直等待成功,会显示相关配置信息。

生成的密码是随机的,需要修改的话,执行

vi /etc/ppp/chap-secrets

注意:xp用户使用L2TP方法登陆的话,可能需要查看电脑的IPSec服务是否正常开启,如果关闭请去“控制面板->管理工具->服务”开启一下。

二、完整diy脚本(高级用户推荐)

①部署IPSec Continue Reading

Comments (9)

Tags:

centos安装ss多用户带前端教程

Posted on 03 2月 2015 by simon

对于新手,整个教程可能会花掉你数小时时间,请做好心理准备。

1、首先必须要有一个PHP+MYSQL的环境,PHP版本>=5.3 MYSQL>=5.0(最好是5.5版本)。

直接执行lnmp1.1官方的安装教程shell,如果是境外主机记得将镜像地址改成国外的,这样快点。

之后一路shell下来,安装上ngnix,mysql,phpmyadmin等等,之前有教程LNMP及LANMP环境一键搭建教程,此处略过。

过程需要30分钟-1小时左右。。。

更新一下yum clean all,yum update

2、安装cymysql

pip install cymysql

如果提示没有安装pip,则直接去pypi下载即可,https://pypi.python.org/pypi/pip/6.0.7

wget https://pypi.python.org/packages/source/p/pip/pip-6.0.7.tar.gz

tar zxvf pip-6.0.7.tar.gz

python setup.py install

如果提示需要的setuptools的话,去下载安装:https://pypi.python.org/pypi/setuptools/12.0.5

wget https://bootstrap.pypa.io/ez_setup.py -O - | python

3、安装SS

git clone -b manyuser https://github.com/mengskysama/shadowsocks.git

如果提示没有安装git,则继续安装git

cd /root/shadowsocks/shadowsocks

创建数据库shadowsocks,然后将shadowsocks.sql导入到你创建的数据库中。如果用命令执行麻烦,可以通过phpmyadmin建数据库,然后导入sql进去。

4、设置数据库

编辑Config.py文件:vi Config.py,修改对应的端口、密码等等操作。

5、开启服务

python server.py

如果放在后台运行则可以,nohup用法具体可以百度。

nohup python server.py &

至此多用户SS安装完毕。

6、下面开始安装前台:

git项目地址:https://github.com/orvice/ss-panel
下载地址:https://github.com/orvice/ss-panel/archive/master.zip

导入其中sql文件夹下面的所有数据库到你自己建立的数据库中,(之前应该已经建立了ss数据库),修改lib/config-sample.php(里面填写你的数据库信息)并改为:config.php即可。
修改默认配置即可。

后台默认信息:
后台地址:/admin
帐号:admin
密码:12345678

7、如果需要安装PPTP,则参照我的另一篇教程Amazon EC2的V*P*N-PPTP搭建教程(on aws redhat6.5 X64)

8、最后建议新手不要使用centos安装,对新手不友好,步骤复杂。建议使用Debian或ubuntu。

Comments (41)

Tags: , ,

自动检测memcached进程,不存在则自动重启(脚本)

Posted on 09 11月 2014 by simon

服务器开启memcached对网站速度提升是非常明显的,可是由于资源分配、内存用满等等原因,memcached可能会挂掉,此时网站就非常卡了,甚至打不开。

以下脚本为检测该进程,不存在则启动服务,并输出日志。

首先创建一个sh脚本

vim memcached_check.sh
内容如下:

#!/bin/sh
#check memcached process and restart if down
DATE=`date -d "today" +"%Y-%m-%d-%H:%M"`
#用ps命令查看memcached进程
MM=`ps aux |grep "memcached" |grep "11211" |grep -v "grep" |wc -l`
#if语句判断进程是否存在,如果不存在,输出日志记录并重启memcached服务
if [ "$MM" == "0" ];
then
echo "$DATE The memcached is problem and restart" >> /root/memcached_check.logs
memcached -d -m 50 -u cloud -p 11211 -c 1024
#wdcp的memcached路径重启命令,语句可以通过ps aux|grep "memchched"
fi

并添加至crontab计划任务中,每隔5分钟检测一次即可。

*/5 * * * * /bin/bash /root/sh/memcached_check.sh
———————————结束————————————

memcached启动参数:

-p 指定端口号(默认11211)
-U UDP监听端口 (默认: 11211, 0 时关闭)
-s 用于监听的UNIX套接字路径(禁用网络支持)
-a UNIX套接字访问掩码,八进制数字(默认:0700)
-m 指定最大使用内存大小(默认64MB)
-t 线程数(默认4)

-l 绑定地址 (默认:所有都允许,无论内外网或者本机更换IP,有安全隐患,若设置为127.0.0.1就只能本机访问)
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-u 绑定使用指定用于运行进程 (只有root用户可以使用这个参数)
-P 将PID写入文件,这样可以使得后边进行快速进程终止, 需要与 -d 一起使用
-m 最大内存使用,单位MB。默认64MB

-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-k锁定所有内存页。注意你可以锁定的内存上限。

试图分配更多内存会失败的,所以留意启动守护进程时所用的用户可分配的内存上限。
(不是前面的 -u 参数;在sh下,使用命令”ulimit -S -l NUM_KB”来设置。)
-v 提示信息(在事件循环中打印错误/警告信息。)
-vv 详细信息(还打印客户端命令/响应)
-vvv 超详细信息(还打印内部状态的变化)
-h 打印这个帮助信息并退出。
-i 打印memcached和libevent的许可。
-L 尝试使用大内存页(如果可用的话)。提高内存页尺寸可以减少”页表缓冲(TLB)”丢失次数,提高运行效率。

为了从操作系统获得大内存页,memcached会把全部数据项分配到一个大区块。
-D 使用 作为前缀和ID的分隔符。
这个用于按前缀获得状态报告。默认是”:”(冒号)。
如果指定了这个参数,则状态收集会自动开启;如果没指定,则需要用命令”stats detail on”来开启。
-t 使用的线程数(默认:4)
-R 每个连接可处理的最大请求数。
-C 禁用CAS。
-b 设置后台日志队列的长度(默认:1024)
-B 绑定协议 – 可能值:ascii,binary,auto(默认)
-I 重写每个数据页尺寸。调整数据项最大尺寸。

Comments (1)

Tags: , ,

百度指数历史数据批量提取查询导出工具(2023年)已更新,支持各省份、城市、PC、移动端数据采集!

Posted on 24 10月 2014 by simon

 

公告:2023年2月更新:本工具已全面升级,数据100%精准,可直接到淘宝店铺购买(一年不到100,买不了吃亏买不了上当),→购买入口

 

—————————————————————————————————

自从发布了早期版本的百度指数查询工具后,就陆续收到各种邮件询问什么注册码的,为什么不给注册码、怎么使用、如何操作、为啥用不了等等。。。V1.0版本早已发布在群共享里,只是没有在本博客和斗牛SEO工具官方网站里发布,也有很多工具都是直接在群内发布的,斗牛SEO所有工具也一直都在更新的,只是更新了都在群内发布了;做这个工具也权当是给VIP会员的权益,多些工具,能多解决些问题。

总而言之,为了节约大家的时间,这里做一下软件介绍及相关使用说明。

目前本软件已升级至V2.7.2,主要功能是会模拟操作你的浏览器,查询百度指数、百度历史指数(查询时间可自己定义,没有限制)、可以自定义查询各个城市的百度指数、整体、PC、移动端历史指数等等。

更新日志:

2022年12月7日: 请看置顶内容。

2019年4月11日:
重要更新:
本工具暂时失效,如果需要关键词的历史指数可联系作者付费提供,100%精准,0误差,童叟无欺。联系QQ:60488六四二一

2015年2月18日(年三十):
升级至V2.7.2
1、添加关键词与日期范围一一对应的选择项,让关键词列表和时间范围列表依次
从上至下一一对应各自时间段,方便一次对不同词设置不同时间范围,查询更灵活.
2、修复了软件运行过程中出现Y1坐标越界的信息提示。

2015年2月15日:
升级至V2.7.1
1、修复历史时间段识别错误导致无法查询的bug

2015年2月5日:
升级至V2.7
1、添加支持整体趋势、PC端、移动端趋势历史数据的单独查询;
2、支持遇验证码自动ADSL拨号换IP功能,真正实现了不需要人工操作,挂机采集;
3、对于历史数据的采集结果,不再在软件界面上显示,直接增量添加到当面目录的
   date_index.txt里,适合挂机,不怕断电等等因素;
4、优化部分win64系统获取数据为空的问题,注意本软件不支持浏览器为64位的
   程序,比如Chrome就有64位的版本,这个版本是不支持的,换成32位就可以
   继续查了。或者你换个浏览器,比如360极速浏览器、IE浏览器等等。
   建议使用Goole Chrome32位、360极速Chrome。
   所以为了统一,我建议大家都用win7或XP 32位系统,不使用64位系统。
   64位系统注册插件,参见文章末尾的
(经过测试,采集2000个词的近2年所有历史数据,防卡延时设置5秒,大约需要挂机
十多个小时才能完成采集。对于少部分的数据为-1,一般需要人工输入刻度值辅助查
询,这部分占比较少,原因是图像干扰了刻度识别。)

2014年11月3日:
升级至V2.5
1、添加自定义时间,循环时间查询的功能,更方便;
2、添加识别坐标刻度值错误的提醒功能;

2014年10月24日:
升级至V2.4.1
1、添加横向偏移的微调设置功能
2、优化软件稳定性

....

2014年10月15日:
升级至v2.0
1、添加半人工查询模式,可手动输入刻度值
2、添加气泡提示运行状态

2014年8月25日:
发布版本v1.0

备注:本软件有2种查询模式,

一、百度指数的实时指数(就是页面上显示那个数值),可以选择近7天,近30天。

二、百度历史指数的数据,这个数据因为是采用图像识别技术,会有5%左右的误差,对于这样的数据,可以在软件选项里,进行坐标精准性微调,调整坐标横向偏移;同时也可以在查询结果乘以一个百分比来均衡这个误差,具体差值需要自己人工判断计算。

本软件面向的用户:

1、需要精确百度指数的用户,而不是模糊有延时的百度指数(比如目前市面上的各种seo工具里的百度指数查询工具)。

2、做行业数据分析,研究相关关键词的热度趋势,需要百度历史指数分析的用户。(比如搞大数据分析、金融、股票数据分析等等行业的人员)。

3、如果你只是想大概查一下关键词的指数、不需要精准数值而且是大批量查询,那么这个工具不太适合你,因为是模拟操作,效率是个问题。(当然大批量指数查询工具也已经做好并发布了,斗牛百度指数批量查询工具V5.0版本,请至公开QQ群共享下载。)

软件功能:

1、支持百度指数实时提取功能,可查询近7、30天各个城市的数据,提取数据包括整体搜索指数、PC搜索指数、移动搜索指数、整体同比、整体环比、移动同比、移动环比;

2、百度历史指数可查询指定时间段的百度指数,没有限制,如果查询的天数超过一年,建议你按照1年1年来查询,比如准备查询2011-2013年所有数据,那么软件里应该分别查询2011年、2012年、2013年的数据;(提示:一般情况下,查询的时间范围跨度越小精度越高,所以在最新发布的版本里,添加上自定义循环时间查询功能,可以分多个时间段分别查询,这样查的数据组合起来可以更精确。)

3、为防止软件识别错误,软件自带半人工干预模式,可以自己手动输入坐标柱的底部值、顶部值,输入后点“我已输入”按钮,软件会自动继续执行;

4、支持出现验证码自动气泡提示,手动输入验证码后,软件自动继续执行工作;

5、支持设置各个城市的ID,方便查询不同城市地区的数据;

6、支持停留时间设置:防止网速太卡导致页面未加载完毕导致数据丢失;

7、支持日期时间范围和列表每个关键词的一一对应设置,可一次查询不同关键词的不同时间范围,避免一次只能查询同一时间范围的尴尬。

8、支持对查询的数据进行二次纠正,可以进行加减乘除;

9、支持关键词的批量导入,一键清空;

10、支持查询时间间隔设置,支持数据导出,支持一键复制;软件支持自动更新。

11、可对验证码进行自动ADSL拨号处理,避免人工处理。

备注:软件压缩包里自带全国各个城市的ID数值,如果需要查询某个城市,只需要去查找一下即可。

软件截图:

QQ截图20150206011514

软件界面


QQ截图20150206011546

数据样本

举例1:

我们对上面采集到的数据样本,”百度”一词,2014年1-6个月数据,进行本地excel制图和真实图表对比:

QQ截图20150206021913

采集到的数据趋势图


QQ截图20150206021929

真实的数据趋势图

根据上面2个图表,可以得出结论,采集到数据已经完全展示了数据的变化趋势,可以用来做数据样本,对于大数据分析来说,该样本是可靠的。

经过计算,本次识别的误差率约为2.48%

举例2:演示图:

(举例)以Google一词为关键词,根据记录的数据进行excel绘图,演示如下:

根据软件提取的数据生成的EXCEL趋势图

根据软件提取的数据生成的EXCEL趋势图

我们再来看一下网页的趋势图是怎么样的:如下

Google的百度指数页面趋势图

Google的百度指数页面趋势图

经过计算,本次识别的误差率为2.8%,经过数值均衡后可达更理想状态。

好了,全部介绍到此为止,如有疑问请再看一遍文章,也可以加群,145876858    106983747

如需下载,也请加群!

常见问题:(Q&A)

1、我打开软件提示插件版本错误,怎么办?

Continue Reading

Comments (2)

Tags: , ,

Amazon EC2的V-P-N-PPTP搭建教程(on aws redhat6.5 X64)

Posted on 20 10月 2014 by simon

前些日子收到amazon的邮件通知,一年前申请的ec2到期了,一年免费的free tier没有了,放在上面的2个站已经欠费了十几美元了,不过我也不打算用了,准备重新注册账号(请不要鄙视我。。)

1、注册开通过程就不详述了,之前的文章已经说过了,这里要说的是:AWS需要填写的信用卡可以用财付通的境外国际账号,(现在好像没有开通渠道了,不过网上有神秘链接可以开通,自己去搜吧,我也忘记是哪个链接了。)然后财付通账号里面需要充值2美元,不是1美元切记,建议往里面充值20元,省得不够AWS的验证扣费会导致验证失败,甚至会反复扣费。如果AWS验证失败,最好先删除AWS里的付款方式后,重新添加信用卡验证,要不然你会发现点“编辑”信用卡账号,点“更新”根本就是没反应的。

当然你也可以直接输入自己的信用卡,验证会比较方便,不过要注意平常使用不要超额,否则会有扣费,具体参考官方说明

2、如果在My Account的控制面板里没有提示付款方式无效,就证明验证通过。

3、之后可能要等20-30分钟后,你才可以建立实例。(让系统有处理时间,不然直接点EC2的面板会提示你付款方式不完善之类信息的。。)

4、然后直接建立实例,我这里选择的是redhat(RHEL-6.5_GA_HVM-20140929-x86_64),一直按着向导下一步即可。

PS:主机环境我使用了WDCP来搭建的,如果你也准备用wdcp来建站,ec2就不要使用Amazon Linux AMI的镜像,否则wdcp里php会无法安装编译。(如果不准备建站,此步可跳过)

5、至此,一年免费主机且无需备案的EC2有了,网速ping大约在80-100左右,还是不错的。


开始搭建VPN-PPTP——how to setup VPN server (pptp on CentOS/RedHat/Ubuntu)

查系统位数 getconfig LONG_BIT,查系统版本 cat /etc/issue ,cat /proc/version,按对应版本下载,ppp/pptp汇总地址

步骤一
如果你的系统是CentOS/RedHat 5:

yum install ppp
cd /usr/local/src
wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.rhel5.x86_64.rpm
rpm -Uhv pptpd-1.4.0-1.rhel5.x86_64.rpm

如果你的系统是CentOS/RedHat 6:

yum install ppp
cd /usr/local/src
wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.el6.x86_64.rpm
rpm -Uhv pptpd-1.4.0-1.el6.x86_64.rpm

如果你的系统是Ubuntu:

apt-get install pptpd

步骤二:
修改/etc/pptpd.conf

vi /etc/pptpd.conf

localip 192.168.9.1
remoteip 192.168.9.11-30

这上面的IP可以自己定义的,不一定非要这样设置,下面的11-30表示允许连接20个IP

步骤三:
添加账号密码至配置文件

vi /etc/ppp/chap-secrets

格式为:(空格分开,不要引号)
user1 * pwd1 *
user2 * pwd2 *

步骤四:
修改DNS配置

vi /etc/ppp/options.pptpd

ms-dns 8.8.8.8
ms-dns 4.4.4.4

步骤五:

修改/etc/sysctl.conf

vi /etc/sysctl.conf

net.ipv4.ip_forward = 1

应用所有配置

sysctl -p

步骤六:

配置防火墙iptables(这里记得将aws里的1723端口开放,在Security Groups的Inbound开启1723端口,需要开启别的端口的也需要在这里开启。)

iptables -A INPUT -i eth0 -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -i eth0 -p gre -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i ppp+ -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o ppp+ -j ACCEPT
service iptables save
service iptables restart

备注,如果为linode机房,此处重启会提示service iptables restart
Setting chains to policy ACCEPT: security raw nat[FAILED]filter,是因为Linode官方在iptables里加了一个security的规则链,但Centos不支持。

解决方法:vi /etc/init.d/iptables

for i in $tables; do
        echo -n "$i "
        case "$i" in
            raw)
                $IPTABLES -t raw -P PREROUTING $policy \
                    && $IPTABLES -t raw -P OUTPUT $policy \
                    || let ret+=1
                ;;

加入以下内容到“case “$i” in”下面:

security)
        $IPTABLES -t filter -P INPUT $policy \
            && $IPTABLES -t filter -P OUTPUT $policy \
            && $IPTABLES -t filter -P FORWARD $policy \
            || let ret+=1
        ;;

最终效果为:

for i in $tables; do
        echo -n "$i "
        case "$i" in
            security)
                $IPTABLES -t filter -P INPUT $policy \
                    && $IPTABLES -t filter -P OUTPUT $policy \
                    && $IPTABLES -t filter -P FORWARD $policy \
                    || let ret+=1
                ;;
            raw)
                $IPTABLES -t raw -P PREROUTING $policy \
                    && $IPTABLES -t raw -P OUTPUT $policy \
                    || let ret+=1
                ;;

之后重启服务即可。

步骤七:

重启PPTP服务

service pptpd restart

将pptp服务加入到开机自启动

chkconfig pptpd on

如果你的系统是Ubuntu乌班图,重启reboot即可。


如果一切OK的话,专属于你自己的VPN便诞生了。。此时可以通过电脑的网络连接-新建连接VPN输入账号密码即可连接该网络。当然android,IOS,OSX,windows均可通过设置连接该网络。

访问国外站点还是很顺畅的,看youtube视频略有点卡。

 

如图所示:

QQ截图20141020225815

该IP即为remote里的第一个IP

QQ截图20141020225828

总体测试还是很快的,能达到2M带宽。

QQ截图20141020225842

下载速度能够保持在300-400K左右。

Continue Reading

Comments (8)

20140711140545

Tags: , , ,

360极速浏览器在chrome商店无法安装插件提示不支持版本的解决方法

Posted on 11 7月 2014 by simon

今天更新了一下360极速浏览器,更新后发现有几个插件竟然丢失了,Lastpass、GA debuger、微博通等等,去360商店里搜索一下竟然一个都没,无法安装;之后去google chrome商店,竟然提示浏览器版本太低,无法安装。。。

不支持chrome

360官方真不给力。。几个月了也不更新一下内核,这个必须吐槽一下,如果不是google浏览器有些不便,早换了。

 

解决方法一:

修改360浏览器的useragent,步骤:F12–右下角设置–overrides–User Agent,改为google最新版的即可。

填入:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36

操作方法

 

之后刷新商店页面即可正常安装插件了。

有部分人说第一种方法不行,是因为修改的useragent只对当前标签页面有效,如果新建标签,需要同样按一下F12,确保useragent也是修改后的,之后你刷新一下商店的页面就好了。
第一种方法基本解决80%的插件安装问题,第二种方法是万能的。

方法二:

(部分插件第一种方式安装不了,只能采用第二种。比如Lastpass…)

思路:安装最新版google chrome浏览器,在商店里安装上所需要的插件,然后打开浏览器的开发者模式,打包已安装的插件目录,生成crx文件,之后拖动文件到360浏览器窗口即可安装。

备注:xp系统默认google的插件目录在:

C:\Documents and Settings\user\Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions

注意点:chrome://extensions/里打包选择的插件目录为版本号的文件夹,密钥文件不用填,如下:

Continue Reading

Comments (2)

斗牛SEO工具