- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 python爬虫 快速构建请求头
在写爬虫的过程中一定会遇到请求头信息很多的问题如下图可以通过pycharm快速构建headers1.首先将headers复制到pycharm中:2.使用快捷键ctrl+R替换功能上边输入(.*?): (.*)下边输入"$1": "$2",如下图所示:要记得后面勾选正则表达式哦!3.点击replace all 并且在外面加上headers与{}如下图所示:这样就成...
2020-03-16 17:12:36
636
原创 python3时间戳与具体时间之间的转化
时间戳转化为时间import timedef timestamp_to_time(timestamp=None, format='%Y-%m-%d %H:%M:%S'): if timestamp: time_tuple = time.localtime(timestamp) # 把时间戳转换成时间元祖 result = time.strftime(f...
2020-03-03 12:42:17
350
原创 Django开发简易的博客系统
博客系统主要有以下几大功能点用户注册和登录博主资料信息图片墙功能留言板功能文章列表文章正文内容Admin后台管理系统下面按照开发的逻辑从架构设计,功能配置,数据库架构设计,路由列表定义,共同模板编写等大的模块写一下开发的流程1.总体配置1.1项目架构设计项目应用account实现用户注册登录和用户资料信息页项目应用album实现图片墙功能项目应用article实现用户的文...
2020-02-25 17:25:47
489
1
原创 PyCharm实现远程调试代码
由于有些模型的调用在服务上运行,所以pycharm的需要连接远程服务器对模型进行调用,通过pycharm连接服务器可以实现高效的远程调试,具体实现如下1.打开pycharm 的Tools > Deployment > configuration如下图2.在新窗口添加远程服务器,在左上角点击 + 号,添加SFTP并命名3 配置远端服务器的连接信息,如下图:HOST为你的服...
2020-01-18 15:13:15
620
原创 Django信息反馈平台
开发主要分为3大部分每个大部分又可以拆分为若干个小部分。此文初版仅记录了开发的顺序 后期会把代码和开发的细节加上。第一部分 项目设计与配置1.1 架构设计1.新建项目messageBoard和项目应用(app)index2.在messageBoard文件夹创建jinja2.py3.在根目录创建模板文件夹templates并分别创建模板文件404,500,base.html4.在ind...
2020-01-18 11:55:32
619
原创 使用python递归遍历json的key,并将key的大写转化为小写
直接上代码吧def lower_json(json_info): if isinstance(json_info,dict): for key in list(json_info.keys()): if key.islower(): lower_json(json_info[key]) el...
2019-12-24 11:13:16
1332
原创 scrapy集成selenium的方法
scrapy集成selenium后即可在scrapy每次请求url时打开chrome浏览器,对于一些js加载的页面有很好的抓取效果下面介绍scarpy集成selenium的方法1.建立JSPageMiddleawre中间件在middlewares文件下#首先导入webdirver和HtmlResponse方法from selenium import webdriverfrom scrap...
2019-09-27 14:34:55
366
原创 scarpy使用fake-useragent配置动态UA
scarpy通过动态的user-agent可以避免被网站封禁,这篇文章主要讲解如何在scarpy中配置动态的UA1.安装fake_useragent直接进入cmdpip install fake_useragent我这里显示已经安装好了2.在middleware中添加随机UA的中间件首先导入我们需要的包from fake_useragent import UserAgent然...
2019-09-26 16:43:24
332
原创 Crawlab的docker部署流程
由于最近手头的爬虫项目比较多,于是就想搭建一个爬虫管理平台来更好的管理不同类型的爬虫,在看了大佬的开源项目crawlab之后发现非常符合预期的效果,包括爬虫部署、任务调度、任务监控、结果展示等。于是就根据大佬的文章如何快速搭建使用的爬虫管理平台搭建了一个自己本地的项目,本文的目的就是把搭建过程中的走过的坑做一下总结。1.Docker的下载与安装1.需要看一下自己的windows版本,如果是专业...
2019-09-23 17:16:04
5238
5
转载 N-gram语言模型
考虑一个语音识别系统,假设用户说了这么一句话:“I have a gun”,因为发音的相似,该语音识别系统发现如下几句话都是可能的候选:1、I have a gun. 2、I have a gull. 3、I have a gub. 那么问题来了,到底哪一个是正确答案呢?一般的解决方法是采用统计的方法。即比较上面的1、2和3这三句话哪一句在英语中出现的概率最高,哪句概率最高就把哪句返回给用户。那...
2019-05-30 18:07:10
455
转载 python迭代器与生成器
本文主要介绍Python中迭代器与生成器的知识列表生成器首先实现一个需求[0,1,2,3,4,5,6,7,8,9],要求你把列表里面的每个值加1,如何实现呢?#方法1info = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]b = []for index,i in enumerate(info): print(i+1) b.append(i+1)pri...
2019-04-19 11:42:28
181
原创 python实现冒泡排序和选择排序
冒泡排序def bubbleSort(arr): for i in range(len(arr)-1): for j in range(len(arr)-i-1): if arr[j]>arr[j+1]: arr[j],arr[j+1] = arr[j+1],arr[j] return arr 选择...
2019-04-16 18:00:41
149
原创 simhash比较文本相似度的原理与实现
1.SimHash与传统hash函数的区别 传统的Hash算法只负责将原始内容尽量均匀随机地映射为一个签名值,原理上仅相当于伪随机数产生算法。传统的hash算法产生的两个签名,如果不相等,除了说明原始内容不相等外,不再提供任何信息,因为即使原始内容只相差一个字节,所产生的签名也很可能差别很大。所以传统的Hash是无法在签名的维...
2019-04-12 14:47:20
1155
原创 python实现二分查找
非递归方式def binary_search(alist,item): n = len(alist) start = 0 end = n - 1 while start < = end: mid = (start + end) // 2 if item == alist[mid]: return True elif item < alist[mid]: ...
2019-04-12 11:38:33
201
原创 [机器学习]第五章决策树算法
1.scikit-learn决策树算法类库介绍scikit-learn决策树算法类库内部实现是使用了调优过的CART树算法,既可以做分类,又可以做回归。分类决策树的类对应的是DecisionTreeClassifier,而回归决策树的类对应的是DecisionTreeRegressor。两者的参数定义几乎完全相同,但是意义不全相同。下面就对DecisionTreeClassifier和Decis...
2019-04-09 11:20:44
213
原创 [机器学习]第四章KNN算法
K近邻算法是机器学习中最简单的分类算法之一,这篇文章主要讲解knn算法的在scikit-learn中的使用,其中不仅仅包括了算法本身,还有测试训练集的分离,交叉验证的使用,数据标准化等。首先用一个简单的例子引入knn算法import numpy as npimport matplotlib.pyplot as pltfrom sklearn.neighbors import KNeighb...
2019-04-08 16:14:09
677
原创 [机器学习]第三章Pandas实战泰坦尼克数据处理
前面已经写到了numpy和pandas的基本操作,这篇用泰坦尼克伤亡的数据做一次简单的数据处理,主要用到了pandas数据库,数据的csv文件大家可以去这里下载,密码:vptu,好了接下来开始正题:1.数据导入查看前五条import pandas as pdimport numpy as nptitanic_survival = pd.read_csv("titanic_train.csv...
2019-03-20 14:00:13
657
转载 [机器学习]第三章Pandas
pandas作为一个数据清洗和分析工作变得更快更简单的数据结构和操作工具,适用于专门为处理表格和混杂数据设计。一.生成数据表1、首先导入pandas库,一般都会用到numpy库,所以我们先导入备用:import numpy as npimport pandas as pd2.导入CSV或者xlsx文件:df = pd.DataFrame(pd.read_csv('name.csv',...
2019-03-20 11:27:34
516
原创 使用dataframe拆分数据库
最近在做数据采集过程中,有一些数据采集下来之后是用逗号分割开的,需要拆分成两条,类似:idlocationuniversitydegree_nameprogramme_enurl25564Perth,AlbanyWestern AustraliaMaster of Curatorial StudiesCuratorial Studies in Fine Art...
2019-03-19 17:48:20
440
原创 [机器学习]第二章Numpy
1.numpy array的创建#生成一维列表in:nparr = np.array([i for i in range(10)]) nparrout:array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])#返回列表的类型in:nparr.dtypeout:dtype('int32')#生成全为0的列表in:np.zeros(10)out:array...
2019-03-19 14:40:22
1395
原创 Redis数据库的基本操作
最近在研究scrapy构建分布式爬虫,用到了一些redis数据库的语法,就把redis 的语法在这里总结了一下。一.字符串1.set key value 设置字符串key为value2.setnx key value 只在键key不存在的情况下,将键key的值设置为value。若键key已经存在, 则SETNX命令不做任何动作。3.setex key seconds value 将键key...
2019-03-15 14:58:40
235
原创 爬虫IP池的构建
通过爬取西刺代理的免费ip以及端口号构建一个属于我们自己的ip代理池 具体代码如下:import requestsfrom scrapy.selector import Selectorimport MySQLdbconn = MySQLdb.connect(host="127.0.0.1",user="root",passwd="123456",db="article_spider"...
2019-03-13 11:22:22
535
原创 Redis windows下的安装与基本操作
Redis的安装1 https://github.com/MicrosoftArchive/redis/releases下载2 解压到文件中,并打开cmd命令行将redis安装至服务中 方便我们的使用E:\zjl\redis> redis-server.exe --service-install redis.windows.conf --loglevel verbose运行完以...
2019-03-13 11:02:11
192
原创 python3虚拟环境的搭建过程
1.首先安装virtualenv以及virtualenvwrapper-win介绍:virtualenv 是一个创建隔绝的Python环境的工具;virtualenvwrapper-win是Windows下对于虚拟环境的管理工具,用它可以简化virtualenv的操作进入cmd环境pip install virtualenvpip install virtualenvwrapper-win...
2019-02-27 18:41:51
842
redis-desktop-manage windows汉化版
2019-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人