自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

彭世瑜的博客

记录我的code历程 个人主页:www.pengshiyu.com

原创 Python爬虫:调用百度翻译接口实现中英翻译功能

百度翻译地址:https://fanyi.baidu.com/ 上篇文章我使用了爬虫获取了有道翻译的接口,这次通过正规渠道获取翻译结果 百度翻译开放平台:http://api.fanyi.baidu.com/api/trans/product/index 1、按照提示注册账号,获取 APP ...

2018-08-31 10:59:14 2198 0

原创 Python爬虫:js加密实例-有道翻译

有道翻译地址:http://fanyi.youdao.com/ 1、随便输入关键字,打开调试,发现是ajax传输,post请求 不难发现,请求连接Request URL: http://fanyi.youdao.com/translate_o?smartresult=dict&am...

2018-08-31 01:42:54 354 3

原创 Python爬虫:scrapy-splash的请求头和代理参数设置

lua中设置代理和请求头: function main(splash, args) -- 设置代理 splash:on_request(function(request) request:set_proxy{ h...

2018-08-28 17:13:17 6372 13

原创 error: scrapy TypeError: 'float' object is not iterable

正常运行爬虫,在公司电脑上没问题,回到家自己电脑上就出现了下面的报错,百思不得解 Traceback (most recent call last): File "D:\.virtualenvs\spider\lib\site-packages\twisted\internet\d...

2018-08-26 11:27:25 1152 0

原创 Python编程:pycharm同级目录导入模块报错问题

PyCharm同级目录导入模块会提示错误,但是可以运行 解决: 在当前目录右键make_directory as-->Sources Root 如果需要多级导入,可以试试添加到系统路径 import sys sys.path.append('...

2018-08-25 15:08:42 2450 0

原创 Python编程:web框架flask、web.py、tornado最小应用

Flask http://docs.jinkan.org/docs/flask/ pip install Flask 最小应用 from flask import Flask app = Flask(__name__) @app.route('/') def hel...

2018-08-25 13:44:06 2096 0

原创 Python爬虫:selenium使用chrome和PhantomJS实用参数

参数设置示例 from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument('lang=zh_CN.UTF-8') driver = webdriver.Chr...

2018-08-25 10:58:24 1125 0

原创 Python爬虫:python2使用scrapy输出unicode乱码

无力吐槽的python2,对中文太不友好了,不过在早期项目中还是需要用到 没办法,还是需要解决 我编写scrapy爬虫的一般思路: 创建spider文件和类 编写parse解析函数,抓取测试,将有用信息输出到控制台 在数据库中创建数据表 编写item 编写model 编写pipline 运...

2018-08-24 15:54:47 931 0

原创 数学:简单理解指数、对数、乘方、开方

定义 指数: y=axy=ax y = a^x 对数 y=logaxy=loga⁡x y = \log_a x 举例 假设 a=2a=2 a=2 乘法: 1×2×2×2=81×2×2×2=8 1 \times 2 \times 2 \times 2 = 8 除法: ...

2018-08-24 13:19:10 2217 0

原创 Python爬虫:利用百度短网址缩短url

写爬虫程序的时候,会遇到目标网址太长,存入数据库存入不了的情况,这时,我们可以通过百度短网址服务将网址缩短之后再存入 百度短网址:http://dwz.cn/ 百度短网址接口文档:http://dwz.cn/#/apidoc 以下是python代码 # -*- coding: utf-8 ...

2018-08-24 11:36:40 1386 0

原创 Pyhton编程:xmlrpc远程文件读取工具

以下使用的是py3代码,py2可能引用方式不一样 服务器端 server.py # -*- coding: utf-8 -*- from xmlrpc.server import SimpleXMLRPCServer def file_read(filename): with ...

2018-08-24 10:41:50 260 0

原创 Pyhton编程:打印json格式的数据

# 打印出JSON import json from pprint import pprint data = {"name": "Tom", "age": 23, "ge...

2018-08-24 10:20:13 519 0

原创 Python编程:Counter计数器-dict字典的子类

Counter计数器,继承了dict类,基本可以和字典的操作一样 from collections import Counter # 实例化 counter = Counter("abcabcccaaabbb") print(counter) # Cou...

2018-08-24 10:11:45 2003 0

原创 Python编程:列表、集合、字典推导式的示例

推导式,其实就是将多行的循环语句放到一行写 # -*- coding: utf-8 -*- # 列表推导式 lst = [i for i in range(5)] print(lst) # [0, 1, 2, 3, 4] # 相当于 lst2 = list() for i in ra...

2018-08-24 10:07:35 80 0

原创 Linux: crontab设置定时任务

crontab用于定时任务 编辑定时任务 $ crontab -e # 编辑 $ crontab -l # 查看任务 $ crontab -r # 删除任务(慎用) crontab文件格式 * * * * * command minute hour day month week...

2018-08-23 15:31:15 85 0

原创 Python编程:asyncio协程编程

同步IO: 一旦遇到IO操作,如读写文件、发送网络数据时,就需要等待IO操作完成,才能继续进行下一步操作 异步IO: 当代码需要执行一个耗时的IO操作时,它只发出IO指令,并不等待IO结果,然后就去执行其他代码了。一段时间后,当IO返回结果时,再通知CPU进行处理 消息循环: 主线程不断...

2018-08-23 15:19:54 150 0

原创 Python编程:pillow对图像的简单处理

图片属性 from PIL import Image def show_info(): im = Image.open("image.jpg") print(im.mode) # RGB print(im.format) # JPEG p...

2018-08-22 09:50:01 1014 0

原创 Git:更改Git远程仓库-从github迁移到coding

github 的代码都是开源的,不是所有的代码都能够公开,比如你们公司的数据库地址,账号,密码等。。。 coding 的代码默认是私有的,所有这一点比github要稍微好点 所有我需要将部分代码迁移到coding 第一步,先确保代码最新 # 先进入到git目录 $ git add . ...

2018-08-21 10:06:39 918 0

原创 Python编程:将markdown格式转换为rst格式

利用requests库对网络接口的请求,将markdown格式转换为rst格式 代码示例 # -*- coding: utf-8 -*- # @File : markdown_to_rst.py # @Date : 2018-08-20 # @Author : Peng Shi...

2018-08-20 19:13:47 1268 0

原创 error: ImportError: No module named cv2

代码: import cv2 报错 ImportError: No module named cv2 解决: pip install opencv-python 参考 Ubuntu系统下Import cv2提示no modules …错误

2018-08-20 16:20:26 104 0

原创 Python编程:from __future__ import print_function

python2.X中print不需要括号,而在python3.X中则需要。 在开头加上from __future__ import print_function这句之后,即使在python2.X,使用print就得像python3.X那样加括号使用。 # python2.7 print &qu...

2018-08-20 11:47:43 2219 0

原创 Linux:文件操作相关命令

功能 指令 按照文件名查找 find / -name filename 查看文件大小和权限 ls -lh 参考 1. linux下的find文件查找命令与grep文件内容查找命令

2018-08-20 11:15:37 86 0

原创 error:selenium操作Firefox报错socket.error: [Errno 10054]

selenium操作Firefox报错socket.error: [Errno 10054] 开始以为是时间不够,增加等待时间,然后没有什么用 查看:https://github.com/mozilla/geckodriver/releases 发现版本要求,再查看本地的Selenium 版...

2018-08-18 11:25:10 381 0

原创 python编程:linux环境gunicorn+nginx部署django项目

安装包 pip install gunicorn supervisor gunicorn 确保项目中有 wsgi.py 文件 通过gunicorn启动django项目(project需要换为相应的名称) gunicorn --chdir project_dir --pythonp...

2018-08-16 16:17:22 390 0

原创 Python编程:DBUtils管理数据库连接池

每次执行一个sql的时候都单独建立一个mysql连接,执行完就close掉,很明显这样的问题在于,频繁连接,断开mysql,这样是相当消耗系统资源的,而且增加了mysql连接失败的几率,所以万一哪个线程没有连接成功 这个线程也over了。 连接池原理 在程序创建连接的时候,可以从一个...

2018-08-16 11:23:02 742 0

原创 Python计算:sympy解数学方程

解方程 solve(f, *symbols, **flags) 函数说明: f: 转化成右端等于0 形式的表达式 symbols: 未知数 代码示例 # -*- coding: utf-8 -*- # @File : sympy_demo.py # @Date : 2...

2018-08-15 17:46:37 7200 0

原创 Python爬虫:selenium和Chrome无头浏览器抓取烯牛数据动态网页

烯牛数据地址: http://www.xiniudata.com/project/event/lib/invest 打开页面,能正常看到内容,查看源代码发现页面并没有出现我们需要的内容,说明这是异步加载的内容。 数据抓取 方式1: 采用requests或scrapy,拿不到页...

2018-08-15 10:55:09 3387 0

原创 Linux:nohup、setsid将程序放到后台运行

nohup python run.py & # ctrl+z #挂起到后台 # ctrl+d #或者 关闭窗口 进程任然会在后台执行 参考 Linux后台执行的方法 - 关闭、退出不影响

2018-08-14 16:31:01 691 0

原创 Python爬虫:scrapy利用splash爬取动态网页

依赖库: pip install scrapy-splash 配置settings.py # splash服务器地址 SPLASH_URL = 'http://localhost:8050' # 支持cache_args(可选) SPIDER_MIDDLEWARES =...

2018-08-13 10:44:46 1874 0

原创 Python爬虫:splash的安装与简单示例

安装splash 1、安装docker(参考:mac安装docker) 2、安装splash docker pull scrapinghub/splash # 安装 docker run -p 8050:8050 scrapinghub/splash # 运行 访问测试: http:...

2018-08-13 10:23:20 4741 0

原创 mac和linux安装docker

方式1、brew安装(安装完后有奇怪的报错) 方式2、下载docker安装(推荐): https://www.docker.com/ 版本检查 $ docker --version Docker version 1.13.0, build 49bf474 $ docker-compose ...

2018-08-13 09:37:20 997 0

原创 Linux:命令行光标移动和删除整行

ctrl+a ctrl+e 分别代表把管标移动到最前和最后 ctrl+u ctrl+k 分别代表光标处往前和光标处往后删除

2018-08-11 10:05:00 13755 0

原创 Linux:添加系统环境变量

临时添加 export PATH=$PATH:/opt/software/node-v8.9.3-linux-x64/bin/node

2018-08-11 09:57:41 201 0

原创 redis:(error) NOAUTH Authentication required

连接redis时,能连接,不过报错 (error) NOAUTH Authentication required 需要密码时的连接方式 redis-cli -h 127.0.0.1 -p 6379 -a password 访问正常 参考 redis客户端连接(error)...

2018-08-09 10:29:22 343 0

原创 Python爬虫:scrapy定时运行的脚本

原理: 1个进程 -> 多个子进程 -> scrapy进程 代码示例 将以下代码文件放入scrapy项目中任意位置即可 # -*- coding: utf-8 -*- # @File : run_spider.py # @Date : 2018...

2018-08-08 20:02:01 2313 0

原创 Python编程:判断字符串中是否包含中文

原理: 中文字符的编码范围是: \u4e00 - \u9fff 只要编码在此范围就可判断为中文字符 代码示例 python2下测试有效 def is_contain_chinese(check_str): ""&q...

2018-08-08 17:56:12 13387 0

原创 Python爬虫:scrapy爬虫设置随机访问时间间隔

scrapy中有一个参数:DOWNLOAD_DELAY 或者 download_delay 可以设置下载延时,不过Spider类被初始化的时候就固定了,爬虫运行过程中没发改变,随机延时,可以降低被封ip的风险 代码示例 random_delay_middleware.py # -*- c...

2018-08-08 17:50:40 13128 1

原创 Python爬虫:scrapy利用html5lib解析不规范的html文本

问题 当爬取表格(table) 的内容时,发现用 xpath helper 获取正常,程序却解析不到 在chrome、火狐测试都有这个情况。出现这种原因是因为浏览器会对html文本进行一定的规范化 scrapy 使用的解析器是 lxml ,下面使用lxml解析,只是函数表达不一样,xpath...

2018-08-08 14:02:55 2616 0

原创 Python爬虫:urlencode带参url的拼接

如果连接直接这样写,看上去很直观,不过参数替换不是很方便,而且看着不舒服 https://www.mysite.com/?sortField=%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD&pageIndex=3&...

2018-08-07 10:29:32 6319 0

提示
确定要删除当前文章?
取消 删除