- 博客(76)
- 资源 (6)
- 收藏
- 关注
原创 关于爬取企业信息类的爬虫(二)
在上一篇中,对企查查进行了数据获取,关于爬取企业信息类的爬虫(一),本篇对cookie中的js进行解析。在企查查的cookie中,主要包含以下几个:acw_tc=701ec49416327465587377184eb448e3cf457f2bbf56789e0313b461cd QCCSESSID=42negcpgs96lali07famk9fsp2 qcc_did=7009749f-0fb0-4fb4-ad93-c0bb260c9a81 UM_distinctid=17c27475a7c26
2021-09-30 21:53:51 2815
原创 关于爬取企业信息类的爬虫(一)
最近需要用到,根据营业执照来查询企业的名称和地址,首先想到的是企查查之类的网页版,在手动查询几十条之后,发现跳出了个账号登录的页面,无法继续查询,且网页每天每个IP的查询量有限制,遂想到了写个爬虫脚本,使用代理的方式来查。一、urllib实现依据fillder抓包,发现在请求qcc.com网址时(GET),会发送相关的6个cookie信息给服务器,之后由服务器返回2个cookie值(包括CDN节点acw_tc、以及企查查服务器QCCSESSID)。由于本人能力有限,无法查到GET请求中,cookie
2021-09-25 15:15:01 7344
原创 python多线程爬取ts视频
http://www.xigua66.com/ 视频网站,可能会报病毒,慎点。1、http过程由于ts文件是m3u8的传输文件,m3u8是苹果公司推出一种视频播放标准,是m3u的一种,不过 编码方式是utf-8,是一种文件检索格式,将视频切割成一小段一小段的ts格式的视频文件,然后存在服务器中(现在为了减少I/o访问次数,一般存在服务器的内存中),通过m3u8解析出来路径,然后去...
2019-04-07 09:51:52 4920 3
原创 爬虫杂谈
1. cookie是用来记录访问WEB信息的,所以要维持账号密码登录状态的就要其用cookie。一般情况下,建议关闭,特别是使用随机proxy代理的时候。因为你IP变了,cookie没变,服务器一看就知道请求有问题。2. 关于fiddler。当URL需要传送表单数据,或者需要进行网页跳转时,可用Fiddler抓包,比如模拟登录时。其他的时候使用浏览器上方的URL或者F12就足够了。3. 关于hea...
2018-04-10 13:55:39 325
原创 selenium和PhantomJS爬取动态网页
一、selenium和PhantomJS用法简介selenium是web的自动化测试工具,类似按键精灵,可以直接运行在浏览器上。pip install seleniumPhantomJS是基于webkit的无界面浏览器,使用时,无需输入header等。需要从 phantomjs.org处下载,再将bin目录添加到环境变量path中。1.1 基本使用流
2018-03-25 09:25:04 5169
原创 爬虫之xpath
一、xpath的语法xpath是用来对XML文件进行解析的。针对如下的XML文件: Everyday Italian Giada De Laurentiis 2005 30.00 Harry Potter J K. Rowling 2005 29.99 XQuery Kick Start James M
2018-03-24 14:47:43 382
原创 web客户端授权验证-proxy
对于一般的proxy设置可以参考:静态网页爬取对于web客户端授权的验证如下网页的验证,无法查看网页源码的。比如登录ftp。可以使用如下代码:# -*- coding:utf-8 -*-import urllib.requesttest = "admin"password = "admin"webserver = "192.168.1.1"# 构建一个密码管理对象,可以用来保存和H...
2018-03-23 20:52:55 1260
原创 Ajax网页爬取
Ajax网页,指的是类似豆瓣电影排行这样的页面。鼠标拉到最下面时,会自动加载;同时,网页的url没有改变;https://movie.douban.com/typerank?type_name=%E5%89%A7%E6%83%85&type=11&interval_id=100:90&action=Ajax动态网页,是通过GET的方式,将表单发送给服务器
2018-03-22 21:25:11 1587
原创 静态网页爬取
使用python爬取网页有很多的API可以使用,但由于API太多,导致有时不知选择哪个。有时,我们想要设置proxy,就要用这套API,想要设置cookie,就得用另一套API。故总结了一个较为全面的爬取流程API,可实现timeout、proxy、cookie、header(7个字段的值设置)以及访问网页可能出现的Error。proxy:代理,有些网站使用代理时无法访问。 co...
2018-03-03 16:52:15 1402
原创 ROC和AUC
绘制ROC曲线,计算AUC,涉及到sklearn.metrics。一般的分类器都有predict_proba或者decision_function method。使用这个method得到预测的值。注意:ROC和AUC使用的都是训练集的数据。sklearn.metrics.roc_curve(y_true,y_score, pos_label=None, samp
2018-02-03 17:20:21 470
原创 AdaBoost分类
一、函数说明使用的是sklearn.ensemble模块。sklearn.ensemble.AdaBoostClassifier有5个参数:参数说明如下:base_estimator:可选参数,默认为DecisionTreeClassifier。理论上可以选择任何一个分类或者回归学习器,不过需要支持样本权重
2018-02-03 16:07:20 1195
原创 支持向量机(SVM)分类
一、函数说明sklearn.svm模块提供了很多模型,它是基于libsvm实现的。我们选用svm.SVC,该函数有14个参数:参数说明如下:C:惩罚项,float类型,可选参数,默认为1.0,C越大,即对分错样本的惩罚程度越大,因此在训练样本中准确率越高,但是泛化能力降低,也就是对测试数据的分类准确率降低。
2018-02-01 22:01:38 3806
原创 逻辑回归分类
一、函数说明使用的是sklearn.linear_model中的函数,共有14个参数。参数说明如下:penalty:惩罚项,str类型,可选参数为l1和l2,默认为l2。用于指定惩罚项中使用的规范。newton-cg、sag和lbfgs求解算法只支持L2规范。L1G规范假设的是模型的参数满足拉普拉斯分布,L2假设的模型参数满足高斯分布。dual:对偶
2018-02-01 15:19:51 1810
原创 朴素贝叶斯分类
一、函数说明朴素贝叶斯是一类比较简单的算法,scikit-learn中朴素贝叶斯类库的使用也比较简单。相对于决策树,KNN之类的算法,朴素贝叶斯需要关注的参数是比较少的,这样也比较容易掌握。在scikit-learn中,一共有4个(0.20版本,0.19版本只有3个)贝叶斯的分类算法类。分别是GaussianNB,MultinomialNB和BernoulliNB。其中Gaussian
2018-01-31 11:16:57 416
原创 决策树分类
一、函数说明sklearn.tree模块提供了决策树模型,用于解决分类问题和回归问题。使用的是DecisionTreeClassifier和export_graphviz,前者用于决策树构建,后者用于决策树可视化。DecisionTreeClassifier一共有12个参数:class sklearn.tree.DecisionTreeClassifier(criter
2018-01-30 22:12:33 953
原创 k-近邻分类
一、函数说明sklearn.neighbors模块实现了k-近邻算法使用sklearn.neighbors.KNeighborsClassifier就可以实现k-近邻算法。KNeighborsClassifier函数一共有8个参数:class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5, weights=
2018-01-29 15:29:14 879
原创 scikit-learn简介
scikit-learn,简称sklearn,是机器学习常用的库,本文使用该库来实现《机器学习实战》中的算法。官网:http://scikit-learn.org/stable/当前版本:0.19.1API说明:http://scikit-learn.org/stable/modules/classes.html安装说明:第三方库下载地址:http://www.lfd.
2018-01-28 17:19:07 947
原创 Subversion SVN服务器
一、下载安装svn是apache的一个开源项目,全称为subversion。是一个基于版本的项目管理软件,一般在多人开发的项目中使用,目前svn已经替代了原来的cvs。大多数情况下,svn服务安装在linux服务器上。下面简单的说一下svn在windows服务上的安装。 1、准备svn的安装文件进入http://subversion.apache.org/packa
2017-08-26 13:27:33 532
原创 文件服务器
文件服务器的搭建及配置重复数据删除、工作文件夹、高可用配置DFS、规则触发邮件报警通知、文件屏蔽功能、配置全局配额、枚举功能、配置共享http://lidongni.blog.51cto.com/2554605/d-9/p-5http://lidongni.blog.51cto.com/2554605/d-9/p-4实践版
2017-08-11 22:30:16 294
原创 服务器杂谈
加入域计算机属性中->更改设置->更改。。。(和PC加入域一样)赋予管理员权限管理工具->计算机管理。。。http://blog.csdn.net/u012260117/article/details/51480489删除服务器服务器管理器->管理->删除角色和功能->剩下的和安装时一样即可
2017-08-10 23:05:49 190
原创 DHCP服务器
安装DHCP服务器Windows版:http://dreamfire.blog.51cto.com/418026/135130/Linux版:http://blog.csdn.net/derkampf/article/details/52280062VMware配置DHCP,客户机无法得到分配的IPhttp://jimhwg.blog.51cto.com
2017-08-05 17:53:10 344
原创 DNS服务器
安装DNS服务器单独安装DNS服务器:http://jinning.blog.51cto.com/10009776/1624270注意事项:一般来说,DC和DNS是放在一起的;首选DNS服务器为DC的IP(if dns is in dc),但不是127.0.0.1;查找区域正向查找区域:就是我们通常所说的域名解析,域名->IP地址
2017-08-05 11:43:36 904
原创 域控制器DC
Windows server 2012 R2 上 :DC安装http://www.cnblogs.com/wanggege/p/4605678.html注意事项:一般来说,DC和DNS是放在一起的;首选DNS服务器为DC的IP(if dns is in dc),但不是127.0.0.1;DNS和DC分离安装的两种方法:https://wenku.baidu.com/
2017-08-03 22:41:01 1910
原创 C++/MFC-钩子函数
一、全局键盘勾子即不管在哪按下键盘上的键,都会通过钩子调用DLL中的函数。1.1、先在DLL里写好回调函数LRESULT CALLBACK KeyboardProc( int code, // 此值为1和3时 我们自己处理 小于零时一般调用CallNextHookEx来处理 WPARAM wParam, // 按下的键值 LPAR
2017-06-11 15:36:48 2501
原创 C++/MFC-动态链接库(DLL)
一、MFC类DLL创建新建一个MFC DLL工程,取名为MFCDLL。二、入口初始化virtual BOOLInitInstance();三、退出清理virtual int ExitInstance();四、导出MFC类函数法一:在函数名、变量名等的前面加上 extern "C" __declspec(dllexport)法二:在M
2017-06-10 21:50:44 1697
原创 C/C++-动态链接库(DLL)
一、认识动态链接库(dll)动态链接库英文为DLL,是Dynamic Link Library 的缩写形式,DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件,不能单独执行,要依赖于EXE进程。比如我们前边所用的套接字函数send就位于ws2_32.dll里边。二、创建动态库dll2.1新建项目(dllwin32),应用程序设置中,选择dll,勾
2017-06-10 19:50:04 1095
原创 C++/MFC-静态链接库
一、认识静态链接库 静态链接库就是你使用的.lib文件,库中得代码最后需要连接到你的可执行文件中去,所以静态连接的可执行文件一般比较大一些。 引用: 法1、#pragmacomment(lib,"XXX.lib") 法2、在项目配置属性-链接器-输入-附加依赖项 里加入 XXX.lib二、建立一个LIB2.1新建项目时,在应用程序设置中,选择静态库
2017-06-10 16:08:56 997
原创 C++/MFC-套接字CSocket之UDP
在C++/MFC-套接字CSocket之一般流程中,按照C/C++UDP套接字之一般流程修改即可一、CSocket套接字服务端修改1、创建套接字Create(m_nPort,SOCK_DGRAM) (注:不需要listen)2、绑定IP和端口Bind(m_nPort,m_strIp)3、添加成员变量 SOCKADDR_INm_Clientaddr;4、在???Dlg:
2017-06-10 15:23:20 3030
原创 C/C++UDP套接字之一般流程
一、UDP套接字服务端架构步骤1. //初始化套接字环境WSAStartup 2. //初始化地址和端口3. //创建UDP套接字socket 4. //绑定端口bind5. //用recvfrom接收数据6. //用sendto发送数据7. //退出或者返回第5步继续 二、UDP客户端架构步骤1. //初始化套接字环境WSAStartup 2. //初
2017-06-10 14:52:59 1445
原创 C++/MFC-套接字CSocket之一般流程
一、用CSocket 建立服务端程序步骤//API版// 服务器端程序:// 1、加载套接字库WSAStartup 环境初始化// 2、创建套接字(socket)。// 3、将套接字绑定到一个本地地址和端口上(bind)。// 4、将套接字设为监听模式,准备接收客户请求(listen)。// 5、等待客户请求到来;当请求到来后,接受连接请求,返回一个新的对应于此次连接的
2017-06-09 19:57:45 4213 1
原创 C/C++-套接字一般流程
一、认识sockets(套接字) Sockets是一个Windows网络编程的规范,sockets(套接字)编程有三种:1、流式套接字(SOCK_STREAM)2、数据报套接字(SOCK_DGRAM)3、原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字(SOCK_STREAM)。基于UDP采用的数据报套接字(SOCK_DGRAM).
2017-06-09 15:14:12 2415
原创 C++/MFC-GDI绘图之CRgn区域,CFile
一、常用成员函数CRgn类成员函数CreateRectRgn创建一个矩形区域来初始化对象CreateRectRgnIndirect创建一个矩形区域来初始化对象参数是一个RECT结构地址CreateEllipticRgn创建一个椭圆区域来初始化对象CreateEllipticRgn
2017-06-07 16:07:49 8730
原创 C/C++读写二进制文件
一、打开二进制文件FILE *fopen( const char *filename, const char *mode );filename是要操作的文件名。 mode 说明"wb" 打开一个二进制文件,进行写入操作。如果文件不存在,则会建立一个新文件. 存在则清空内容。"ab" 打开一个二进制文件,进行追加操作。如果文件不存在,则会建立一个新文件. 存在则追加内容。"r
2017-06-07 15:40:52 793
原创 C++/MFC-GDI主要对象(Bitmap、CBrush、CFont、CPalette、CPen和CRgn)
在MFC中,CGdiObject类是GDI对象的基类,通过查阅MSDN我们可以看到,CGdiObject类有六个直接的派生类。GDI对象主要也是这六个,分别是:①CBitmap位图②CBrush画刷:区域颜色填充。VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)③CFont字体VS2010/MFC编程入门之四十七(字
2017-06-05 13:43:15 2286
原创 C++/MFC-GDI绘图之CBitmap位图
一、显示资源里的位图①载入图片:loadbitmap②创建设备上下文:CreateCompatibleDC③替换设备环境位图:SelectObject④复制位图:bitblt⑤释放对象⑥释放设备上下文示例代码:{ // TODO: 在此添加控件通知处理程序代码 CBitmap mybitmap; mybitmap.LoadBitmap(IDB_BITMAP3);
2017-06-03 13:21:44 7677
原创 C++/MFC-GDI绘图之CBrush画刷
一、CBrush成员函数1.1构造函数CBrush( );CBrush( COLORREF crColor ); //类似CreateSolidBrushCBrush( int nIndex, COLORREF crColor ) //类似CreateHatchBrushCBrush( CBitmap* pBitmap ); //类似CreatePatternBrush
2017-06-03 12:32:21 3072
原创 C++/MFC-进程/线程亲缘性
SetProcessAffinityMask //设置进程 可以使用的CPUSetThreadAffinityMask //设置线程 可以使用的CPU第一个参数是当前进程的句柄,第二个参数是几块CPU运行。第二个参数计算方式:用几块CPU,就输入几个1,再转化为十进制,或者16进制即可。例:3块CPU,二进制111->十进制7。void CDialog_Thread_Pr
2017-06-02 21:22:31 406
原创 C++/MFC-多线程绘图
一、坐标系转换GetWindowRect 1、取得屏幕坐标 2、转换成相对坐标 3、绘图 4、设计函数DrawRect(UINT id,UINT* width),根据线程时间片和EDIT控件ID位置 绘制矩形void CDialog_Thread_Priority_test::DrawRect(UINT edt_ID, UINT*
2017-06-01 21:16:32 4011
原创 C++/MFC-GDI绘图
一、了解GDI与GUIGDI是Graphics Device Interface的缩写,含义是图形设备接口,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出。在Windows操作系统下,绝大多数具备图形界面的应用程序都离不开GDI,我们利用GDI所提供的众多函数就可以方便的在屏幕、打印机及其它输出设备上输出图形,文本等操作。GDI的出现使程序员无需要
2017-06-01 20:19:26 1587
原创 C++/MFC-多线程
在一个进程中创建多个线程。一、对话框设置1.1添加7个Cstatic,及7个CEdit控件1.2CEdit控件 绑定7个UINT类型的值变量 m_edt_time1至m_edt_time71.3添加3个CButton控件 分别为CreateThread SuspendThread ResumeThread二、回掉函数#define WM_
2017-06-01 16:02:47 963
EasyX画图.doc
2017-05-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人