python
文章平均质量分 56
dayun555
这个作者很懒,什么都没留下…
展开
-
rpy2下载
在python中安装rpy2刚开始各种不成功,报错,后来参考下边文章下载导入成功https://blog.csdn.net/faith_mo_blog/article/details/94434174?utm_source=distribute.pc_relevant.none-task...转载 2020-02-19 15:11:14 · 623 阅读 · 0 评论 -
自己封装一个用于获取User-Agent的类
OO:面向对象OOP:面向对象编程OOA:面向对象分析OOD:面向对象设计OO的特点:封装(将代码封装在函数中),继承,多态 在面向对象语言中,接口的多种不同的实现方式即为多态继承的特点:1.子类用哦与父类的全部属性和方法2.子类拥有自己的属性和方法3.子类可以重写父类的方法举例:张无忌-张翠山1.张无忌 拥有你张翠山的财产/剑/衣服(属性)...武当剑法(方法)2.张无忌 自己 买房子(属性),...原创 2018-02-28 21:11:27 · 640 阅读 · 0 评论 -
基于requests的51job数据爬取并存储到csv中
import requestsfrom fake_useragent import UserAgentagent=UserAgent()#当用到xpath时需要引入此包from lxml import etree下载url="http://search.51job.com/list/010000%252C020000%252C180200%252C200200,000000,0...原创 2018-02-28 21:08:55 · 1134 阅读 · 0 评论 -
python中xpath基本用法
1.网页的解析方式 1)xpath(简单) 2)正则(最难) 3)css(需要懂网页的css) 4)bs4(比xpath难一点点) 2.xpath的基本用法 1)环境准备:首先安装火狐浏览器(版本不能太高) 在浏览器右上角三个横杠-->附加组件-->获取附加组件--...原创 2018-02-28 21:00:40 · 3653 阅读 · 0 评论 -
基于文件操作的电影数据展示,并将其展示在网页中
import requests当需要建立文件夹时,就要引入此包import os如果url中的参数包含中文,那么需要先编码,否则对方服务器不识别 参数是中文的必须编码,requests包会自动编码url="http://api.map.baidu.com/telematics/v3/movie?qt=hot_movie&ak=TueGDhCvwI6fOrQnLM0qmXxY9N0OkOiQ...原创 2018-02-28 20:58:35 · 431 阅读 · 0 评论 -
文件操作在python2和python3中的区别
在Python2中,没有 encoding="utf-8",若要使用,需要引入codecs包例如:# python2.7f = open("1.txt", "w")import codecsf = codecs.open("1.txt", "w", encoding="utf-8")在pyhon3中,可直接用# python3.6f = open("1.txt"原创 2018-02-28 20:37:09 · 293 阅读 · 0 评论 -
从快代理网站中爬取代理ip与端口号并判断其是否可用
爬虫所用到的函数与基本思想: 1.初始化函数 url headers html result_ip(存放可用ip) 2.start函数 for循环遍历前10的ip 调用请求函数和解析函数 3.请求函数 url ip 如果ip为空,不使用代理ip发起请求获取源代码,ip不为none,说明这次请求是用来测试代理ip是否可用 4.解析函数 根据正则匹配ip_port数据...原创 2018-03-07 18:39:44 · 1658 阅读 · 0 评论 -
代理ip的用法
引入模块from urllib import request准备urlurl = 'http://www.baidu.com'准备代理ip地址proxy_ip = { 'http': '139.224.135.94:80'}根据代理ip创建代理对象proxy_handler = request.ProxyHandler(proxy_ip)自己创建一个发送请求的函数opener = req...原创 2018-03-07 18:12:11 · 1610 阅读 · 0 评论 -
爬取糗事百科并保存在数据库中
# 正则import re# 爬取网络数据from urllib import request, parse# 引入时间模块import time# 引入自己定义的工具类# Tools用来清洗数据# DBManger用来连接、关闭数据库并向数据库中插入数据# 注:tools文件会在此博文下边给出from tools import Tools, DBManger声明爬虫类,定义初...原创 2018-03-07 18:08:00 · 364 阅读 · 0 评论 -
基于requests的歌曲查询
代码整体思想:运行名字之后将会生成两个文档,一个文档是name.txt,用于放输入的名字;另一个文档是song.txt,用于存放搜索到的信息数据。1.首先判断name.txt文件是否存在,如果存在,则继续去读name.txt文档里的内容;若不在,则需先建立此文档,然后再去读文件。2.将每次输入的名字与name.txt文件里的内容做比较,倘若在文件里,则说明此歌名对应的数据已在song.txt文档里...原创 2018-02-27 19:18:51 · 193 阅读 · 0 评论 -
利用cookie实现登陆知网与抽屉网 基于session自动登录抽屉网 cookie与session区别
将利用cookie实现登陆知网、抽屉网 和 基于session自动登录抽屉网 写在一起,主要是这样更利于比较session和cookie二者的差别利用cookie实现登陆知网与抽屉网Cookie:小蛋糕,饼干特点1. 用于存储用户的某些信息(不包含隐私信息)2. 只用于存储少量数据3. cookie是个文件,位于浏览器4. cookie有生命周期,一旦网页退出,cookie就失效了 1....原创 2018-02-27 18:25:52 · 698 阅读 · 0 评论 -
常用的状态码 常用的请求方法
常用状态码:1xx(以1开头):服务器成功接收部分请求2xx:一般表示成功3xx:一般表示重定向4xx :一般表示客户端错误5xx :一般表示服务器错误200 表示成功404 服务器无法找到被请求的页面 你访问的资源不存在403 服务器拒绝访问 权限不够 Forbidden500 请求未完成,服务器遇到不可预知的情况常用的请求方法:GET/POST(最常用) PUT/DELETE/...原创 2018-02-27 18:19:05 · 391 阅读 · 0 评论 -
请求 与 响应
请求 requests响应 response客户端 通过 请求 向服务器发送数据服务器 通过 响应 向客户端返回数据请求的结构 1.请求行 :请求方法 \请求地址 \请求版本 例如:GET/index.html HTTP/1.1 2.请求头 host:域...原创 2018-02-27 14:23:54 · 2364 阅读 · 0 评论 -
python爬取天堂网图片
#获取网页源码/下载网页/图片/视频/音频import requests#解析网页相关数据from lxml import etree#操作文件夹/路径import os#1.下载网页源码#2.解析网页源码(难度比较大)#3.解析相关数据url="http://www.ivsky.com/tupian/ziranfengguang/"response=requests.g...原创 2018-02-26 12:48:29 · 5472 阅读 · 0 评论 -
python中从大字符串里截取小字符串
以一例题说明:分别用了for循环和while循环两种方式要寻找的大字符串:在大字符串中依次找链接,如:http://www.tepintehui.com/detail/11411?ce#coding:utf-8string='明星同款| 钟基欧巴穿的小脏鞋5折辣!装逼| 你们见过凌晨四点钟的洛杉矶吗?反人类| 世界上最干净的纸竟然是黄色的科普| 吃了避孕药之后怀的孩子能要吗?真假|原创 2018-01-30 09:58:20 · 1527 阅读 · 0 评论 -
爬取豆瓣
此爬虫思想: 1.在get_html 中根据url地址,获取目标数据,判断请求的是否为完整影评的json数据,如果是将返回的数据赋值给json属性,如果不是就赋值html属性 2.在parse_list函数中,根据正则解析当前页的所有电影的链接,拼接完整的影评链接地址,发送请求,解析影评数据, 找到下一页的链接,发送请求,重新调用parse_list函数解析下一页数据.... ...原创 2018-03-08 19:08:38 · 1136 阅读 · 0 评论 -
爬取百度贴吧精品贴,并将每一帖子以其命名放入excel表格中
# -*- coding:utf-8 -*-import refrom urllib import request# 引入自定义的工作类 在此博文后会给出from tools import Toolsfrom fake_useragent import UserAgentagent = UserAgent()import xlwt""" https://tieba.ba...原创 2018-03-08 19:03:53 · 431 阅读 · 1 评论 -
bs4_lxml的基本用法
# -*- coding:utf-8 -*-# 需要下载bs4包 pip install bs4# lxml xpath会用到里边的treefrom bs4 import BeautifulSoupimport codecs# BeautifulSoup 是python支持的一个第三方的包,作用是用来解析网页,提取数据# lxml 第三方的解析包,解析html速度比较快,功能强大,...原创 2018-03-08 19:17:43 · 787 阅读 · 0 评论 -
虚拟环境
场景:假如当前有两个项目A和B,两个项目中都需要依赖requests库,但是需要的版本不一样,而默认情况下,不管哪个项目,使用的都是全局的Python环境上述场景,造成的问题是,A和B两个项目,只能运行一个;如果运行另一个,必须安装与之匹配的库版本解决方案:使用虚拟环境,创建一个完全独立的局部python环境,在此环境中安装所有与这个项目匹配的库即可。总之,一个项目,使用一个全局独立的“p...翻译 2019-04-25 21:01:20 · 1377 阅读 · 0 评论 -
python列表生成式与列表生成器
列表生成式是快速生成一个列表的一些公式在列表中存放0~100的数:普通的列表生成: numbers=[]for x in range(0,101): numbers.append(x)print(numbers)用列表生成式生成列表:[要放入列表的数据 简单的表达式1 表达式2] #x for x in range(0,101) for循...原创 2018-09-14 09:22:01 · 317 阅读 · 0 评论 -
分别用类、函数与普通的方法爬取天堂网图片,并将其分类保存到文件夹中
1.普通方法引入需要的包# 当创建文件夹时,用到此包import os# 网络请求包from urllib import request, parse# 正则import refrom fake_useragent import UserAgentuseragent = UserAgent()准备url地址url = 'http://www.ivsky.com/tupian/zira...原创 2018-03-06 17:16:27 · 882 阅读 · 0 评论 -
写一个爬取智联招聘数据的类,并将数据保存在excel表格中
此爬虫的中各个函数的作用: 1.初始化函数 基础的url地址,请求头,用来记录HTML源代码属性,total_page总页数 2.start函数 爬虫的主函数 3.get_html函数 根据url地址获取html源代码,转换为str类型,并赋值得self.html 4.parse_total函数 从html源代码中根据...原创 2018-03-06 16:56:53 · 1741 阅读 · 0 评论 -
python中如何引用excel表格
1.需要引入xlwt包import xlwt2.创建一个工作簿对象workbook = xlwt.Workbook(encoding='utf-8')3.添加一张表sheet = workbook.add_sheet('python职位表')4.向表中添加数据 sheet.write(0, 0, '职位名称') sheet.write(0, 1, '工作地点') sheet....原创 2018-03-06 16:34:40 · 3986 阅读 · 0 评论 -
urllib的基本用法
#coding:utf-8# urllib urllib2import urllibfrom urllib import request,parse,response# 使用urllib发起请求rep = request.urlopen('http://www.baidu.com')# .read()函数读取响应中的响应数据result = rep.read()# decod...原创 2018-03-05 20:09:30 · 361 阅读 · 0 评论 -
验证手机号是否正确的正则表达式
phone_pat = re.compile('^(13\d|14[5|7]|15\d|166|17[3|6|7]|18\d)\d{8}$')while True: phone = input('请输入您的手机号:') res = re.search(phone_pat,phone) if res: print('正常手机号!') ...原创 2018-03-05 20:08:29 · 787 阅读 · 0 评论 -
正则表达式中的re
import re# 带有\n换行符的字符串string = ''' aaaaaa ssss dd f aasd'''# re.S 作用就是会将大字符串中的换行符看做一个普通的字符进行处理,这样可以\n也可以匹配到pattern = re.compile('a.*?d',re.S)res = re.search(pattern...原创 2018-03-05 20:07:59 · 161 阅读 · 0 评论 -
正则函数
re模块是python中内置的用来支持正则表达式的模块import rematch( )函数 1.正则表达式 2.要进行查找的大字符串 如果找到结果,返回结果对象 ,没找到返回None 要查找的子串必须位于大字符串中的开头位置才可以匹配成功,如果不在匹配失败,返回None...原创 2018-03-05 20:06:46 · 3055 阅读 · 0 评论 -
爬虫与反爬虫策略
爬虫程序 服务器 编写爬虫代码,发起请求,接收响应,爬取数据监控到某个时间短,访问量突然增大,并且发起请求的ip地址相 同,对User-Agent字段判断在发起请求时,添加User-Agent字段,模仿用户代理检测到某个ip访问频率过高,限制访问频率在发请求时,使用代理ip,设置请求间隔时间需要登陆之后,才能查看数据注册网站账号,模拟cooki...原创 2018-03-05 11:41:14 · 533 阅读 · 0 评论 -
Windows系统安装Python集成环境Anaconda 双环境的切换
集成环境Anaconda 自带许多包,用起来会很方便,使用时直接引入即可,不用再去下载对于安装过程与环境的配置在此处推荐一个比较详细的网址:https://864071694.gitbooks.io/pythonfullstackbook/content/di-er-82823a-python-huan-jing-an-zhuang/windowsxi-tong.htmlpython中双路径的切换...原创 2018-02-24 17:39:01 · 836 阅读 · 0 评论 -
python中将文件打包成终端文件
第一步:下载pyinstaller包 打开命令窗口,输入pip install pyinstaller,回车第二步:下载成功之后,找到所有打包的文件-->鼠标放在空白处-->按住键盘的shift键-->鼠标点击右键-->选择在此处打开命令窗口(W)第三步:命令窗口打开之后,输入pyinstaller -F 文件名 加-F可将杂...原创 2018-02-24 12:27:19 · 473 阅读 · 0 评论 -
Scrapy框架中设置编码格式
utf-8:全球通用编码ascii:能存储字母/数字/符号,美国专用gbk|gb2312|gb18030:能够存储汉字要生成经编码后的csv类型文件cmdline.execute(['scrapy', 'crawl', '爬虫文件名称', '-o', '文件名.csv', '-s', 'FEED_EXPORT_ENCODING="gb18030"'])例如:cmdline.execute(['sc...原创 2018-03-01 19:29:04 · 5813 阅读 · 1 评论 -
scrapy的基本用法----爬取天堂网图片
scrapy的基本用法1. 通过命令创建项目scrapy startproject 项目名称2. 用pycharm打开项目3. 通过命令创建爬虫scrapy genspider 爬虫名称 域名4. 配置settingsrobots_obey=FalseDownload_delay=0.5Cookie_enable=False5. 自定义UserAgentMiddleWare可以直接粘现成的或者自己...原创 2018-03-01 19:15:55 · 1081 阅读 · 0 评论 -
在scrapy框架下创建爬虫项目,创建爬虫文件,运行爬虫文件
一、创建项目在终端输入 scrapy startproject 项目名称例如:二、使用pycharm打开爬虫项目打开文件之后,如下。并对文件附以解释说明三、在pycharm终端创建爬虫项目说明:一个项目可以创建多个爬虫文件爬虫文件内容的解析:四、运行爬虫文件的方法一:在终端运行在终端执行文件时肯能会遇到以下错误:解决措施:在终端输入pip install pypiwin32方法二:建立运行文件,...原创 2018-03-01 18:10:03 · 16827 阅读 · 5 评论 -
scrapy 框架的下载与下载时常遇到的错误
python中用于爬虫的框架有三个:Scrapy PySpider Selenium 其中,Selenium:自动测试的一个框架下载scrapy命令框输入:pip install scrapy在下载时可能会出现以下错误:下面说明我遇到的错误与解决方法故障一:时间超时:解决方法:输入命令故障二:如下解决方法:下载安装VisualCppBuildTools_Full.exe文件即可...原创 2018-03-01 17:56:53 · 685 阅读 · 0 评论 -
写一个函数能实现字符串中find()函数的功能
#在string13中查找到字符串qwer的起始位置string13='adguhguiuisriqwerndfjiodhdfigus9oijersdjoiqwer'def FIND(string,sub,start=0,stop=-1): if stop ==-1: stop=len(string) ''' 1.for循环遍历字符串,根据小字符串的长度对原创 2018-01-29 22:12:39 · 1223 阅读 · 0 评论 -
python中字符串的用法(后附加转义字符表)
一、字符串的声明string2="abcd"#''' '''三个单引号对声明的字符串,会保留其格式string3=''' 1.猜猜看 2.就不猜 3.猜不猜 4.拜拜 '''print(string3)string4=""" 1.... 2.... 3...原创 2018-01-29 22:09:59 · 8155 阅读 · 0 评论 -
python中字典的用法
字典是一个容器类,可以用来存放数据列表存储数据的特点:1.有序的 2.每个数据都有一个索引,通过索引可以对数据进行查询、修改、删除字典存储数据的特点:key:value(键值对) key必须是不可变的,一般使用字符串作为字典中的key,也可以使用数字等不可变类型的值原创 2018-01-25 17:57:57 · 1324 阅读 · 0 评论 -
python中类的用法(对象函数、类函数、静态函数)
对象函数:对象函数直接在类中声明即可,不需要添加装饰器,对象函数只能由对象调用执行,也可由类调用,但是在调用时,需要将一个对象作为参数进行传递,对象函数中有一个self参数,self指调用该函数的对象,例如:对象A调用该函数,self指对象A 对象B调用该函数,self指对象B类函数:类函数声明前。需要添加装饰器@classmethod,类函数可以由类和对象调用执行,在类函数中有一个cls参数原创 2018-02-01 20:38:20 · 5633 阅读 · 0 评论 -
python中的sorted函数
在用这个函数注意要在python2中执行sorted()函数 可以对数字(从小到大、从大到小)或字符串(ASCII)进行排序,默认升序进行排序对数字进行排序:list1 = [1,52,2,44,1132,43,25,3]# 默认按照升序排序rs = sorted(list1)print(rs)结果:[1, 4, 23, 35, 43, 44, 555, 1132]#原创 2018-02-01 22:13:11 · 332 阅读 · 0 评论 -
字符串转换为整数 字符串大小写转换
字符串转换为整数:自己写一个函数,实现字符串转换为整数 {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9} 例如: '123456' 返回 123456数字 使用map和reduce函数转换过程: 1.先将字符串传入char_number函数中,在函数中,根据传原创 2018-02-01 21:25:38 · 271 阅读 · 0 评论