Python学习
文章平均质量分 71
Jiayu920716
这个作者很懒,什么都没留下…
展开
-
python虚拟环境的使用与jupyter补全提示配置
虚拟环境的使用1. 安装virtualenvcmd窗口下pip install virtualenv -i https://pypi.douban.com/simple2. 安装虚拟环境进入到你想安装虚拟环境的目录, 如:D:\Program Files进入到黑窗口. 执行以下命令产生一个新的虚拟环境,如:virtualenv ai执行命令:virtualenv <虚拟环境名字>目录下会创建 你的 <虚拟环境名字>` 的文件夹3. 使用虚拟环境进入虚拟环境的s原创 2021-03-22 19:46:56 · 499 阅读 · 0 评论 -
Python 手把手教你将图片变成字符画
Pillow模块是Python中用于处理图片的模块,由于它是第三方模块,所以在使用前,我们需要先来安装Pillow模块,安装命令如下:pip install pillow在pillow模块中,最常用的就是Image类。接下来,介绍一下Image类的几种常用方法: 打开图片可以使用Image类的open()方法打开一张图片代码如下:from PIL import Image 操作图片通过Image对象的实例属性,获取图片的相应属性,并操作图片。01 # 获得图像尺寸:02 w, h原创 2021-02-27 15:52:13 · 399 阅读 · 0 评论 -
Python爬虫之路-爬取北、上、广租房信息
链家网在实现爬取北、上、广租房信息时,需要使用fake_useragent、asyncio、aiohttp、requests、lxml以及pandas模块。各模块关键技术如下:1.fake_useragent模块fake_useragent模块是第三方模块,所以在使用前需要先通过以下命令进行模块的安装:pip install fake-useragent模块安装完成以后,首先需要导入fake_useragent模块中的UserAgent类。代码如下:from fake_useragent im原创 2021-02-27 15:42:21 · 640 阅读 · 1 评论 -
Python爬虫之路-多进程爬取在线课程并存入MySQL数据库
使用多进程的方式可以提高爬取数的效率。在Python中,multiprocessing模块可是实现多进程。该模块实现多进程有几种方式,例如Process多进程类和Pool进程池等。本次使用Pool进程池的方式来实现多进程的工能。主要流程如下: 创建进程池首先实例化Pool()类,然后调用pool实例对象的map方法,这里需要传递2个参数,第一个参数main是进程要执行的函数,第二个参数index是当前页码索引。代码如下:01 pool = Pool() # 开启进程02 index = (原创 2021-02-27 15:21:23 · 398 阅读 · 0 评论 -
Python爬虫之路-爬取在线课程并存入MySQL数据库
本次将爬取的网易云课程信息存入数据库,首先需要对课程数据进行分析,然后根据课程数据信息创建对应的数据表中的字段。最后,将爬取的课程数据写入到MySQL数据库。使用PyMySQL模块操作数据库,流程如下: 连接数据库使用PyMySQL的connect()方法连接数据库,代码如下:# 连接数据库,示例为本机mysql01 conn = pymysql.connect(host='localhost',02 port=3306,03原创 2021-02-27 15:18:30 · 585 阅读 · 0 评论 -
Python爬虫之路-爬取在线课程并保存到Excel
网易云课堂 :study.163.com输入 python 关键字 搜索显示全部python课程本次实现 :提取课程信息并保存到Excel使用xlsxwriter模块实现该功能。使用前一定要导入该模块:import xlsxwriter如果要将数据写入到Excel,首先需要创建一个Excel,然后再Excel创建sheet,最后在sheet中写入数据。下面分别介绍实现方法:1)创建Excel。代码如下:workbook = xlsxwriter.Workbook("网易云课堂Pytho原创 2021-02-27 15:08:41 · 808 阅读 · 0 评论 -
Python爬虫之路-Scrapy基础
Scrapy ShellScrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码启动Scrapy Shellscrapy shell "https://hr.tencent.com/position.php?&start=0#a"Selectors选择器Scrapy Selectors 内置 XPath 和 CSS Selector 表达式机制Selector有四个基本的方法,最常用的还是xpath: xpath(): 传入xpath表达式,返回该表达式所对原创 2021-01-25 13:23:28 · 197 阅读 · 0 评论 -
Python爬虫之路-Scrapy入门
Scrapy 框架介绍Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。Scrapy框架:用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。Scrapy 使用了Twisted(其主要对手是Tornado)多线程异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各种中间件接口,可以灵活的完成各种需求。Scrapy架构图Scrapy主要包括了以下组件: Scrapy原创 2021-01-25 13:22:21 · 166 阅读 · 0 评论 -
Python爬虫之路-bs4和xpath
1.bs4Beautiful Soup 4 文档https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html示例:爬取股票基金import urllibfrom urllib import requestfrom bs4 import BeautifulSoupstockList = []def download(url): headers = {"User-Agent": "Mozilla/5.0 (co原创 2021-01-25 13:18:40 · 664 阅读 · 0 评论 -
python基础
Python基础知识总结对以前学习时做的记录翻出来做一次整合,温故而知新一,变量1.定义变量:a = 10a, b = 10, 20a = b = c = 100# a = 1, b = 2 # 报错a, *b, c = 1, 2, 3, 42.命名规范: a. 只能使用字母数字下划线,且不能以数字开头 b. 不能是关键字: (False, None, True, and, as, assert, async, await, brea原创 2021-01-19 20:57:58 · 469 阅读 · 0 评论 -
Python爬虫之路-JS的解析
JS的解析学习目标:了解 定位js的方法了解 添加断点观察js的执行过程的方法应用 js2py获取js的方法1 确定js的位置对于前面人人网的案例,我们知道了url地址中有部分参数,但是参数是如何生成的呢?毫无疑问,参数肯定是js生成的,那么如何获取这些参数的规律呢?通过下面的学习来了解1.1 观察按钮的绑定js事件通过点击按钮,然后点击Event Listener,部分网站可以找到绑定的事件,对应的,只需要点击即可跳转到js的位置1.2 通过search all file 来转载 2021-01-04 04:53:51 · 631 阅读 · 1 评论 -
Python爬虫之路-chrome在爬虫中的使用
chrome浏览器使用方法介绍学习目标了解 新建隐身窗口的目的了解 chrome中network的使用了解 寻找登录接口的方法1 新建隐身窗口浏览器中直接打开网站,会自动带上之前网站时保存的cookie,但是在爬虫中首次获取页面是没有携带cookie的,这种情况如何解决呢?使用隐身窗口,首次打开网站,不会带上cookie,能够观察页面的获取情况,包括对方服务器如何设置cookie在本地2 chrome中network的更多功能2.1 Perserve log默认情况下,页面原创 2021-01-04 04:51:06 · 354 阅读 · 0 评论 -
Python爬虫之路-打码平台的使用
验证码处理学习目标了解 验证码的相关知识掌握 图片识别引擎的使用了解 常见的打码平台掌握 通过打码平台处理验证码的方法1.图片验证码1.1 什么是图片验证码验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。1.2 验证码的作用防止恶意破解密码、刷票、论坛灌水、刷原创 2021-01-04 04:46:02 · 925 阅读 · 0 评论 -
Python爬虫之路-反爬与反反爬
常见的反爬手段和解决思路学习目标了解 服务器反爬的原因了解 服务器常反什么样的爬虫了解 反爬虫领域常见的一些概念了解 反爬的三个方向了解 常见基于身份识别进行反爬了解 常见基于爬虫行为进行反爬了解 常见基于数据加密进行反爬1 服务器反爬的原因爬虫占总PV(PV是指页面的访问次数,每打开或刷新一次页面,就算做一个pv)比例较高,这样浪费钱(尤其是三月份爬虫)。三月份爬虫是个什么概念呢?每年的三月份我们会迎接一次爬虫高峰期,有大量的硕士在写论文的时候会选择爬取一些往网站,并进行舆转载 2021-01-04 04:43:23 · 1302 阅读 · 0 评论 -
Python爬虫之路-lxml模块
数据提取-lxml模块知识点了解 lxml模块和xpath语法的关系了解 lxml模块的使用场景了解 lxml模块的安装了解 谷歌浏览器xpath helper插件的安装和使用掌握 xpath语法-基础节点选择语法掌握 xpath语法-节点修饰语法掌握 xpath语法-其他常用语法掌握 lxml模块中使用xpath语法定位元素提取属性值或文本内容掌握 lxml模块中etree.tostring函数的使用1. 了解 lxml模块和xpath语法对html或xml形式的文本提取特原创 2021-01-04 04:37:54 · 440 阅读 · 1 评论 -
Python爬虫之路-jsonpath模块
数据提取-jsonpath模块知识点了解 jsonpath模块的使用场景掌握 jsonpath模块的使用1. jsonpath模块的使用场景如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的。jsonpath模块就能解决这个痛点,接下来我们就来学习jsonpath模块jsonpath可以按照key对python字典进行批量数据提取知识点:了解 jsonpath模块的使用场景2. jsonpath模块的使用方法2.1 jsonpath模块的安原创 2021-01-04 04:27:57 · 243 阅读 · 0 评论 -
Python爬虫之路-selenium在爬虫中的使用
一.selenium的介绍知识点:了解 selenium的工作原理了解 selenium以及chromedriver的安装掌握 标签对象click点击以及send_keys输入1. selenium运行效果展示Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接调用浏览器,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏等。我们可以使用selenium很原创 2021-01-04 04:20:17 · 663 阅读 · 0 评论 -
Python爬虫之路-requests模块
requests模块知识点:掌握 headers参数的使用掌握 发送带参数的请求掌握 headers中携带cookie掌握 cookies参数的使用掌握 cookieJar的转换方法掌握 超时参数timeout的使用掌握 代理ip参数proxies的使用掌握 使用verify参数忽略CA证书掌握 requests模块发送post请求掌握 利用requests.session进行状态保持前面我们了解了爬虫的基础知识,接下来我们来学习如何在代码中实现我们的爬虫1. reque转载 2021-01-04 03:58:43 · 950 阅读 · 4 评论 -
Python爬虫之路-爬虫基础知识(理论)
爬虫概述知识点:了解 爬虫的概念了解 爬虫的作用了解 爬虫的分类掌握 爬虫的流程1. 爬虫的概念模拟浏览器,发送请求,获取响应网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟客户端(主要指浏览器)发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是客户端(浏览器)能做的事情,爬虫都能够做爬虫也只能获取客户端(浏览器)所展示出来的数据知识点:了解 爬虫的概念2. 爬虫的作用爬虫在互联网世界中有很多的作用,比如:原创 2021-01-04 03:47:44 · 411 阅读 · 0 评论 -
Python-使用海龟绘图制作动态时钟
在实现动态时钟时,需要使用python内置的datetime模块与turtle模块。1.datetime模块import datetime(1)datetime模块中datetime类的today()方法,用于返回一个表示当前本地日期时间的datetime对象。datetime.today()参数说明:返回值:返回一个表示当前本地日期时间的datetime对象。实现获取当前本地日期与时间的示例代码如下:from datetime import datetime # 导入dateti原创 2020-12-28 20:44:53 · 3936 阅读 · 2 评论 -
HTTP报文解析
----http get请求报文----请求行-----GET / HTTP/1.1 => 请求方法(方式) 请求的资源路径 http协议的版本----请求头----Host: www.baidu.com =>服务器的主机ip地址和端口号,提示如果看不到端口号默认是80Connection: keep-alive =>和服务端程序保存长连接,当客户端和服务端有一段时间(3-5)没有进行通信,那么服务器程序会主动向客户端断开连接Upgrade-Insecure-Req原创 2020-12-26 11:41:47 · 3370 阅读 · 0 评论 -
Python 打印迷宫地图小游戏
在实现玩转小迷宫这个游戏时,分别使用了input()输入函数、print()输出函数、if…elif…else语句、二维列表、while循环、for循环下面对这些用法再一次重温1.input()输入函数在 Python 中,使用内置函数 input() 可以接收用户的键盘输入。input() 函数的基本用法如下:variable = input("提示文字")其中,variable 为保存输入结果的变量,双引号内的文字用于提示要输入的内容。例如,想要接收 用户输入的内容,并保存到变量tip中,可原创 2020-12-26 00:30:30 · 864 阅读 · 0 评论 -
Python 使用海龟绘图实现贪吃蛇游戏
在实现贪吃蛇游戏时,首先需要使用python内置的turtle模块来实现创建游戏窗体与键盘按键的监听工作,然后使用freegames模块进行贪吃蛇的绘制工作。turtle模块turtle模块是python的内置模块,所以在使用前需要使用import导入该模块。代码如下:import turtle(1) 创建游戏窗体可以使用turtle模块中的setup()方法来实现。语法格式如下:turtle.setup(width=_CFG["width"],height=_CFG["height"],s原创 2020-12-26 00:11:20 · 12242 阅读 · 3 评论 -
Python 发送带Excel附件的QQ邮件
SMTP(Simple Mail TransferProtocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。Python的smtplib模块提供了一种很方便的途径发送电子邮件。它对SMTP协议进行了简单的封装。Python创建SMTP对象语法如下:import smtplibsmtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )参数说明:host: SMTP 服务器主.原创 2020-12-25 23:19:33 · 1213 阅读 · 0 评论 -
素材-注册A.html
注册A原创 2020-12-24 12:44:12 · 490 阅读 · 0 评论 -
Python-web自动化-webdriver常用方法总结
'''本次总结WebDriver元素定位方法WebDriver元素常用操作方法WebDriver操作浏览器常用方法WebDriver鼠标、键盘操作元素等待下拉选择框、弹框、滚动条操作'''import time# 导包from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsfrom selenium.webdriver.common.keys impo原创 2020-12-24 12:42:08 · 736 阅读 · 0 评论 -
Python自动化测试之路-测试基础(测试用例)
测试用例1. 测试用例定义测试用例又叫做test case,是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。2. 编写测试用例的原因2.1 理清思路,避免遗漏如果测试的项目大而复杂,我们可以把项目功能细分,根据每一个功能通过编写用例的方式来整理我们测试系统的思路,避免遗漏掉要测试的功能点。2.2 跟踪测试进展通过编写测试用例,执行测试用例,我们可以很清楚的知道我们的测试进度。2.3 历史参考 在我们所做的项目中,也许会原创 2020-12-22 21:51:54 · 1970 阅读 · 0 评论 -
Python自动化测试之路-测试基础(理论)
1 认识软件测试什么是软件测试 在规定条件下对程序进行操作,从而发现错误,对软件质量进行评估的一个过程.软件测试的目的是想以最少的人力,物力和时间找出软件中潜在的各种错误与缺陷,通过修正各种错误和缺陷提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患以及带来的商业风险。软件测试的定义 使用人工或自动手段来运行或测试摸个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果和实际结果之间的差别.1.2 软件开发过程模型软件开发流程软件开发模型(Software Dev原创 2020-12-22 21:07:45 · 1151 阅读 · 0 评论 -
Python基础应用-编写简易混合加减法计算题
random 模块的使用随机生成数字,输出简易混合加减法计算题目,如100以内的混合加减法输出到txt文件import random#定义多个变量并赋值exp1,exp2 = "",""str1,str2 = "",""j=0count=int(input("请输入出题数量:"))while j<count: if j<count: # 随机产生"+"或 "-"号 flag = random.cho原创 2020-12-20 22:44:25 · 1774 阅读 · 0 评论 -
Python基础应用-摄氏温度换算
print("||||||||||||||||||||||")print(" 摄氏温度转换器")print("||||||||||||||||||||||")she = input('请输入摄氏温度:').strip('')# 判断数字是否为浮点数def is_number(s): try: float(s) return True except ValueError: pass try: impor原创 2020-12-20 22:37:57 · 2186 阅读 · 0 评论 -
Python基础应用-验证输入的ip地址是否正确
# 设置判断网址是否正确的标志变量为真cause = True# 输入IP地址 ip = input('请输入IP地址:\n').strip(' ')line = ip.split('.')# 网址按“.”切为4段if len(line) == 4: for item in line: # 对网址各段进行判断 if item.原创 2020-12-20 22:34:09 · 1575 阅读 · 0 评论 -
Python编程-基础语法
要点定义变量的语法变量名 = 值标识符:由数字、字母、下划线组成不能数字开头不能使用内置关键字严格区分大小写数据类型:整型:int浮点型:float字符串:str布尔型:bool元组:tuple集合:set字典:dict转换数据类型常用的函数:int()float()str()list()tuple()eval()运算符:算数运算的优先级混合运算优先级顺序:()高于 ** 高于 * / // % 高于 + -赋值运算符=复合赋原创 2020-12-17 19:26:56 · 286 阅读 · 0 评论 -
Python 简易挑战10秒小游戏
from tkinter import *from tkinter.messagebox import *import timeimport randomroot=Tk()rans=[0.1,0.08,0.06,0.04]count=0start=Falsedef ten(): # 游戏主题函数 global start # 定义全原创 2020-12-17 13:13:38 · 860 阅读 · 1 评论 -
Python 实现随机生成双色球号码
输入生成的双色球组数,随机批量生成双色球号码幸运数字为蓝色球import randomprint("*****福彩双色球*****")print("====================")red=[str(i).zfill(2) for i in (random.sample(range(1,31),6))]print(','.join(red)+","+str(random.choice(range(1,16))).zfill(2))import randomprint("*****福原创 2020-12-15 21:57:34 · 2484 阅读 · 0 评论 -
Python 随机抽奖
import randomnum = [] # 用于存放抽奖码# 将抽奖码添加到num中for i in range(12): prizenum = input("请输入第" + str(i + 1) + "个抽奖码:") num.append(prizenum)resultList = [] # 用于存放随机数结果# 生成随机数的递归数学,参数counter表示当前准备要原创 2020-12-15 21:51:05 · 1537 阅读 · 0 评论 -
Python 根据身份证号判断所属省份,生日与性别
身份证为18位,前6位为籍贯,其中前2位为省区编号,7到10位为出生年,11到12为月,13到14为日期17位为性别,偶数为女,奇数为男dic={'11':'北京市','12':'天津市','13':'河北省','14':'山西省','15':'内蒙古自治区','22':'吉林省', '23':'黑龙江省','31':'上海市', '32':'江苏省','33':'浙江省','35':'福建省','36':'江西省', '37':'山东省','41':'河南省','42':'湖原创 2020-12-15 21:48:04 · 9315 阅读 · 1 评论 -
Python 实现简单虚拟跑步机计算消耗的能量
根据体重,运动速度,运动时间,计算消耗的热量消耗热量=体重X运动时间X指数K指数K=30/速度(分钟/400米),每400米用去的时间如速度为6千米每小时60/(6000/400)=400*60/6000=4分钟/400米,K=30/4=7.5import timeimport sysleave=0 print ("==========虚拟跑步机=========")print (30 *"#")weight=f原创 2020-12-15 00:15:25 · 3970 阅读 · 1 评论 -
Python 编写简易东北方言小词典
代码目录下创建note.txt,内容:噶哈:有什么事磕趁:难看卡了:摔倒,栽跟头了埋汰:脏上该里溜达:上街上,到街里闲逛。唠嗑:谈话,聊天白唬:瞎说,说话不着边际,能说稀罕:喜欢贼:很,特别犊子:混蛋扯犊子:闲扯、不干正经事得瑟:不务正业,爱出风头整个浪儿:全部善茬子:软弱可欺的人赛脸:不听话膈应:讨厌,不喜欢嘎咕:做事与众不同图鄙:被人骗还不知道麻溜:快点打狼:最后一名尿性:有骨气,厉害老鼻子:多毛楞三光:做事不稳重欠登儿:到处添乱的人老蒙咔吃眼:年纪大了原创 2020-12-14 23:59:08 · 507 阅读 · 1 评论 -
Python 根据计算机主板,CPU信息等生成注册信息
注册信息:产品序列号是在用户注册时根据用户软件所安装的计算机软硬件信息生成唯一识别码,一般叫作机器码,,通过计算机上的硬盘序列号,CPU序列号,主板序列号等经过简单加密生成25位序列号python的wmi模块可以很容易地获取Windows系统的硬件信息,如硬盘序列号,硬盘分区,内存大小,cpu序列号,主板信息等,在使用wmi模块之前,需要先安装pywin32,wmi须pywin32的支持pip install win32compip install wmiimport wmiimport rand原创 2020-12-14 23:42:12 · 992 阅读 · 0 评论 -
Python 根据出生日期判断生肖
import mathlunar = '申酉戌亥子丑寅卯辰巳午未'zodiac = '猴鸡狗猪鼠牛虎兔龙蛇马羊'ztime = ['1936(1.24)', '1937(2.11)', '1938(1.31)','1939(2.19)', '1940(2.08)', '1941(1.27)', '1942(2.15)', '1943(2.05)', '1944(1.25)', '1945(2.13)', '1946(2.02)', '1947(1.22)', '1948(2.10)', '194原创 2020-12-14 23:29:02 · 4734 阅读 · 0 评论