
工作
郭立影
这个作者很懒,什么都没留下…
展开
-
return 调用加参数 和不加参数区别
加参数def test(m): a =1 return a+mdef test2(): m = 5 s = test(m) b=2 print(s+b)test2()不加参数def test(): a =1 return adef test2(): s = test() b=2 print(...原创 2020-03-31 16:37:33 · 458 阅读 · 0 评论 -
crawlab 配置 mongodb
服务器下载mongodb服务器mongodb本地远程连接(创建新用户)ip 是服务器iplinux-------use adminuse test添加test库的账户> db.createUser({user:'test',pwd:'mongodb',roles:[{role:'dbOwner', db:'test'}]});3. Thingsboard Dock...原创 2020-03-31 09:20:26 · 1136 阅读 · 0 评论 -
linux 安装mongodb
官网下载mongodbwget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-4.2.5.tgz解压tar -zxvf mongodb-linux-x86_64-rhel62-4.2.5.tgz移动位置mkdir mongodbmv -r mongodb-linux-x86_64-rhel62-4.2.5 /d...原创 2020-03-30 11:36:58 · 438 阅读 · 0 评论 -
scrapy-redis 分布式爬虫原理 及 与scrapy不同
Scrapy 是一个通用的爬虫框架,但是不支持分布式Scrapy-redis是为了更方便地实现Scrapy分布式爬取,而提供了一些以redis为基础的组件(仅有组件)scrapy任务调度是基于文件系统,这样只能在单机执行crawl。scrapy-redis将待抓取request请求信息和数据items信息的存取放到redis queue里,使多台服务器可以**同时执行crawl和items...原创 2020-03-25 17:10:17 · 452 阅读 · 0 评论 -
mongodb 整理studio 3T语句
1、Insert操作详解db.collection.insertOne()插入多个文档,db.collection.insertMany()db.inventory.insertMany([ { item: "journal", qty: 25, size: { h: 14, w: 21, uom: "cm" }, status: "A" }, { item: "notebook...原创 2020-03-25 16:09:18 · 1155 阅读 · 0 评论 -
MongoDB和MySQL的区别
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。它们各有各的优点,关键是看用在什么地方。所以我们所熟知的那些SQL语句就不适用于MongoDB了,因为SQL语句是关系型数据库的标准语言。一、关系型数据库-MySQL1、在不同的引擎上有不同的存储方式。2、查询语句是使用传统的sql...原创 2020-03-18 14:16:40 · 2312 阅读 · 0 评论 -
linux centos只能连手机热点 不能连wifi
把网络连接从桥接换成net原创 2020-03-18 13:18:19 · 994 阅读 · 0 评论 -
mongodb下载安装 配置远程连接(安装时配置)windows
https://www.mongodb.com/download-center#community网站下载mongodb 安装(自定义安装,去掉对号–Install Mongodb Compass)4.2.3首先在服务器的D盘下面创建1个文件夹(前提有D:\log)D:\data\db然后进入到mongodb的bin目录下,根据安装路径,我这里是 D:\mongodb\bin先打开一个...原创 2020-03-18 11:22:26 · 297 阅读 · 0 评论 -
python如何curl
http://docs.python-requests.org/zh_CN/latest/user/quickstart.html真的是个好东西,里面有关于requests模块的详细说明。简单分析下我的需求,1、http请求 2、‘-u’身份验证 3、‘-H’请求header头 4、‘-d’请求参数,理清思路再看文档就简单多了(刚开始我连-H是什么意思都没弄明白)。import request...原创 2020-02-20 13:30:46 · 1735 阅读 · 0 评论 -
python 面向对象
面向对象的思想面向过程:—侧重于怎么做?1.把完得成某一个需求的 所有步骤 从头到尾 逐步实现2.根据开发要求,将某些功能独立的代码封装成一个又一个函数3.最后完成的代码,就是顺序的调用不同的函数特点:1.注重步骤与过程,不注重职责分工2.如果需求复杂,代码会变得很复杂3.开发复杂项目,没有固定的套路,开发难度很大面向对象:–谁来做?相比较函数,面向对象是更大的封装,根据职责在...原创 2020-02-20 13:28:59 · 126 阅读 · 0 评论 -
M3U8 转MP4
安装包python3 -m pip install Cryptopython3 -m pip uninstall pycryptodome–(安装Crypto.Cipher缺少包)什么是M3U8文件M3U8文件是指UTF-8编码格式的M3U文件M3U文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放原视频数据分割为很...原创 2020-02-18 11:04:40 · 5077 阅读 · 0 评论 -
关于xpath、pyquery和beautifulsoup的一点区别---xpath可以**根据文本定位到节点**
关于xpath、pyquery和beautifulsoup的一点区别—xpath可以根据文本定位到节点#根据两个标签间文字定位节点在使用xpath之前要导入lxml的etree模块,格式是:html = etree.HTML(response.text) 格式化后,得到可以进行xpath处理的文档。于是,进行搜索,比如搜索含有文字为:“hello”的a节点,可以使用:result = ht...原创 2020-02-17 11:31:20 · 767 阅读 · 0 评论 -
mp
#16进制 base64import base64import requestsfrom pyquery import PyQuery as pqclass Decode: def getHex(self,param1): return { 'str': param1[4:],#截取前面四个数字字母之后 'hex':...原创 2020-02-17 11:26:59 · 162 阅读 · 1 评论 -
PyQuery 简介
PyQuery(基于lxml模块) Python四个爬虫解析方法之一pip install pyquery 安装html = """<html lang="en"> <head> 简单好用的 <title>PyQuery</title> </head> <body>...原创 2020-02-17 10:35:13 · 723 阅读 · 0 评论 -
python的mysql链式操作,SQL构建器,告别原生写法
Python的mysql链式操作,ABuilder告别繁琐的模型定义,节省开发时间,几乎没有任何要求,导入直接使用。与常规模型不同ABuilder不需要预先定义表字段、字段类型、字段长度等繁琐的设置,当然那样做有它的优点这里就不说了~,各具所长取舍看个人。ABuilder支持入直接使用,简单、快速、便捷安装 a-sqlbuilderpip install a-sqlbuilder数据库配置...原创 2020-01-15 17:34:13 · 402 阅读 · 0 评论 -
sql limit 坑
limit是mysql的语法select * from table limit m,n其中m是指记录开始的index,从0开始,表示第一条记录n是指从第m+1条开始,取n条。select * from tablename limit 2,4即取出第3条至第6条,4条记录...原创 2020-01-02 12:27:14 · 276 阅读 · 0 评论 -
linux 后台运行程序
1、Linux下一般比如想让某个程序在后台运行,很多都是使用&在程序结尾来让程序自动运行;比如 python 文件python dowmload_movie.py &上面这条命令就是直接在命令的最后加上&这个就会在后台运行了。2、但是我们很多程序并不像mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用&结尾,但是如果终端关闭,那么...原创 2019-12-26 14:16:03 · 178 阅读 · 0 评论 -
python 基于redis实现分布式锁
一 分布式锁的理解上图可以看到,变量A存在三个服务器内存中(这个变量A主要体现是在一个类中的一个成员变量,是一个有状态的对象),如果不加任何控制的话,变量A同时都会在分配一块内存,三个请求发过来同时对这个变量操作,显然结果是不对的!即使不是同时发过来,三个请求分别操作三个不同内存区域的数据,变量A之间不存在共享,也不具有可见性,处理的结果也是不对的!如果我们业务中确实存在这个场景的话,我们就...原创 2019-12-19 13:27:35 · 323 阅读 · 0 评论 -
抓包工具 charles安装
1.安装Charles2.安装好以后打开,配置Charles证书;选择help——SSL Proxying——install Charles Root Certificate会出现证书安装的信息,我这边已经安装成功,第一次可能需要安装将证书安装在“受信任的根证书颁发机构”,这步很重要最后提示导入成功,出现如上述证书信息显示说明证书安装成功,也可在证书路径中查看证书安装结果3....原创 2019-12-16 10:54:10 · 246 阅读 · 0 评论 -
数据库 去除重复数据
DELETE FROM gx_shipin_gaoxiao_haokanWHERE 1=1AND title in (SELECT * FROM ( (SELECT title FROM gx_shipin_gaoxiao_haokan GROUP BY title HAVING COUNT(title)>1) ) a)AND id not in (SELECT * FROM ( (S...原创 2019-12-11 13:20:10 · 200 阅读 · 0 评论 -
bug
pymysql.err.InternalError: (1054, “Unknown column ‘fl_classification’ in ‘field list’”)pymysql 表名错误原创 2019-12-05 17:16:08 · 94 阅读 · 0 评论 -
时间戳
import urllib.requestimport reheaders = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'}r = urllib.request.Request('https://m.weibo.cn/api/container/getIn...原创 2019-11-22 10:06:28 · 295 阅读 · 0 评论 -
yield 生成器 迭代器
迭代器通过iter方法产生可迭代对象,可迭代对象用next方法进行迭代。iter方法返回self只要函数定义体有yield关键字,该函数就是生成器函数。从Python源码中我们知道一个技巧,空的生成器用while False来yield None表示比如python中的“字典”,javascript中的”对象“,又比如你自己写了一个”树“结构的类,想遍历整个树的节点?那么传统的for循环,wh...原创 2019-11-21 19:28:54 · 197 阅读 · 0 评论 -
crontab 定时任务(补充)
crontab是linux系统或unix系统中常用的定时命令,使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux/unix命令。例如系统管理员安排一个备份任务使其每天都运行,也可以定义个命令每天定时清理垃圾文件,那么如何往 cron 中添加一个作业?crontab –e0 5 * * * /root/bin/backup.sh这将会在每天早上5点运行 /root/...原创 2019-11-19 18:05:36 · 194 阅读 · 0 评论 -
crontab -----项目部署定时任务
使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令。例如系统管理员安排一个备份任务使其每天都运行如何往 cron 中添加一个作业?crontab –e0 5 * * * /root/bin/backup.sh这将会在每天早上5点运行 /root/bin/backup.shCron 各项的描述以下是 crontab 文件的格式:{minute} {hou...原创 2019-11-19 18:00:54 · 426 阅读 · 0 评论 -
爬虫-替换url参数-抓取不同页面(分页)--把替换参数拼接为一个完整url
#完整url:http://shengri.zk008.com/duanxin/page-1.html#分页部分-- 拼接url(format)#爬虫-替换url参数-抓取不同页面(分页)–把替换参数拼接为一个完整url#解决办法-python(format函数)完成拼接(一个完整url)–把所有参数放入一个集合,用for循环批量替换urls = (‘page-1’,‘page-2’,‘p...原创 2019-11-13 08:47:16 · 1274 阅读 · 0 评论 -
raw_unicode_escape -----编码解决乱码问题
from lxml import etreeimport requestsurl = ‘http://shengri.zk008.com/duanxin/2492.html’data = requests.get(url).text.encode(‘raw_unicode_escape’).decode(“utf-8”)print(data)s=etree.HTML(data)def ...原创 2019-11-12 16:18:21 · 2350 阅读 · 0 评论 -
enumerate()---下标和值
enumerate()是python的内置函数、适用于python2.x和python3.xenumerate在字典上是枚举、列举的意思enumerate参数为可遍历/可迭代的对象(如列表、字符串)enumerate多用于在for循环中得到计数,利用它可以同时获得索引和值,即需要index和value值的时候可以使用enumerateenumerate()返回的是一个enumerate对象...原创 2019-11-11 17:26:14 · 361 阅读 · 0 评论 -
一、python中/text()和//text()的区别:
一、python中/text()和//text()的区别:1、/text只是提取该标签中的文本。2、//text提取该标签下(包括其中包含的子标签)的所有文本。原创 2019-11-04 12:51:35 · 2931 阅读 · 0 评论 -
Python学习--函数调用与声明问题
def test1(): #这是定义函数test1()test() #函数test1()中调用了test(),此时函数test()还没有定义,不过没关系,因为这里只是定义函数test1(),只要在调用test1()的地方之前定义了test()函数就可以!!!def test(): #这是定义函数test()print(‘test’)test1() #这里是调...原创 2019-10-29 10:05:40 · 170 阅读 · 0 评论