python3.8学习之路
Gloria!
一条鱼^_^
展开
-
python3学习之路 -- 9.3.1)- xpath测试
<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <title>Title</title> </head> <body> <ul> <li><a href="http://www.baidu.com">百原创 2022-05-24 15:25:16 · 106 阅读 · 0 评论 -
python3学习之路 -- 9.3.4)- 获取xinxi信息
import requestsfrom lxml import etreeimport csvurl = "https://baike.baidu.com/item/易烊千玺"header = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36"}resp = request原创 2022-05-24 15:24:16 · 114 阅读 · 0 评论 -
python3学习之路 -- 9.3)- xpath模块
"""1. 安装lxml模块:pip install lxmlxpath 解析2. xpath 是在XML文档中搜索内容的一门语言 html 是XML的一个子集3. xpath 使用小技巧: 1. 右键网页,选择检查(在查看网页源码下面) 2. 左上角一个箭头点击,即可左右看到每一个页面展示内容对应的代码 3. 选中代码,右键 --> copy --> copy xpath 或者使用F12,elements部分也可"""'''<原创 2022-05-19 08:40:00 · 214 阅读 · 0 评论 -
python3学习之路 -- 9.2.1)- 获取yemian信息
import requestsfrom bs4 import BeautifulSoupimport csvurl = "https://baike.baidu.com/item/易烊千玺"header = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36"}resp =原创 2022-05-19 08:39:41 · 193 阅读 · 0 评论 -
python3学习之路 -- 9.2)- bs4模块
"""安装# pip install bs4# pip install bs4 -i https://pypi.tuna.tsinghua.edu.cn/simple bs4"""# 1. 拿到源代码# 2. 使用bs4进行解析,拿到数据# 需求:从 https://www.sohu.com/a/546226570_120064990 获取到菜的信息import requestsfrom bs4 import BeautifulSoupimport csvurl = "htt原创 2022-05-19 08:39:22 · 271 阅读 · 0 评论 -
python3学习之路 -- 9.1.4)- 获取yemian内容练习
# 1. 定位到2022必看片# 2. 从2022必看中提取到子页面的链接地址# 3. 请求子页面的链接地址,拿到想要的下载地址import requestsimport redomain = "https://www.dytt89.com/"#resp = requests.get(domain, verify=False)#如果需要SSl,加verify,表示去掉安全验证resp = requests.get(domain)resp.encoding = "gb2312"#pri原创 2022-05-19 08:38:47 · 187 阅读 · 0 评论 -
python3学习之路 -- 9.1.3)- 获取豆瓣top250_变量
# 拿到页面源代码 requests# 通过re提取想要的信息 reimport requestsimport reimport csv# 获取多页数据,https://movie.douban.com/top250 这个地址每25是一页start = input("输入想从哪个数字+1开始获取25条信息:")url = f"https://movie.douban.com/top250?start={start}"#print(url) https://movie.douban.co原创 2022-05-19 08:38:29 · 49 阅读 · 0 评论 -
python3学习之路 -- 9.1.2)- 获取豆瓣250top
# 拿到页面源代码 requests# 通过re提取想要的信息 reimport requestsimport reimport csvurl = "https://movie.douban.com/top250"header = { "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/5原创 2022-05-19 08:38:09 · 51 阅读 · 0 评论 -
python3学习之路 -- 9.1.1)- 正则表达式
"""1. 正则测试工具:https://www.oschina.net/ --> 在线工具 --> 实用在线工具 --> 正则表达式测试(https://tool.oschina.net/regex)元字符: 1. . 匹配除换行符以外的任意字符 2. \w 匹配字母数字或下划线 => [a-zA-Z0-9_] 3. \d 匹配数字 4. \n 换行 5. ^ 匹配字符串的开始 6. $ 匹配字符串的结束原创 2022-05-19 08:37:51 · 43 阅读 · 0 评论 -
python3学习之路 -- 9.1)- re模块
import re"""#-------------------------------------------- findall --------------------------------------------# findall:匹配字符串中所有的符合正则的内容【返回的是列表】# 正则前面加 r 只有好处没有坏处,不加会有波浪线,看着不舒服lst = re.findall(r"\d+", "我的电话是:17621118979,我朋友电话:10086")print(lst) #['17原创 2022-05-19 08:37:32 · 117 阅读 · 0 评论 -
python3学习之路 -- 9)- 数据解析
"""解析方式: 1. re解析 Regilar Expression:正则表达式 2. bs4解析 html 基本语法: <标签 属性=“值” 属性=“值”> 被标记的内容 </标签> 3. xpath解析"""...原创 2022-05-19 08:36:44 · 47 阅读 · 0 评论 -
python3学习之路 -- 8.4)- requests_post
import requestsurl = "https://fanyi.baidu.com/sug"s = input("请输入你要翻译的英文:")#发送的数据dat = { "kw": s}#发送post请求,发送的数据必须放到字典,通过data参数进行传递resp = requests.post(url, data=dat)print(resp.json()) #将服务器返回的内容处理为json...原创 2022-05-18 08:43:47 · 113 阅读 · 0 评论 -
python3学习之路 -- 8.3)- requests_get
"""安装requestpip install requests清华源:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests"""#搜狗地址:https://www.sogou.com/web?query=易烊千玺#百度地址:https://www.baidu.com/s?&wd=易烊千玺import requests'''#搜狗地址模拟url = 'https://www.sogou.com/原创 2022-05-18 08:43:25 · 99 阅读 · 0 评论 -
python3学习之路 -- 8.2)- requests拼接参数
#---------------------------------------------------------------------------------------------------------------# https://movie.douban.com/j/chart/top_list?type=24&interval_id=100%3A90&action=&start=0&limit=20# type 后面的信息都是参数#-----------原创 2022-05-18 08:42:58 · 921 阅读 · 0 评论 -
python3学习之路 -- 8.1)- web请求过程刨析
#1. 服务器渲染:在服务区那边直接把数据和html整合,统一返回给浏览器#2. 客户端渲染;# 第一次请求只要html骨架,第二次请求拿到数据,进行数据展示# 在页面源代码中,看不到数据# 熟练使用浏览器抓包工具 F12...原创 2022-05-18 08:42:40 · 97 阅读 · 0 评论 -
python3学习之路 -- 8)爬虫
# 爬虫:通过编写程序来获取到互联网上的资源# 百度# 需求:用程序模拟浏览器,输入一个网址,从该网址中获取到资源或内容# python实现# 建议将源码保存成为html页面进行爬取,防止被封from urllib.request import urlopenurl = "http://www.baidu.com"resp = urlopen(url) #打开百度#b 开头为字节,字节转码decode#print(resp.read().decode("utf-8")) #打印抓取原创 2022-05-18 08:42:15 · 37 阅读 · 0 评论 -
python3学习之路 -- 4.3)内置函数1
'''内置函数:直接可以拿来用的函数s = "呵呵哒"print(help(str))print(str(s))'''原创 2022-05-18 08:41:54 · 45 阅读 · 0 评论 -
python3学习之路 -- 4.13)内置函数2
"""zip:可以把多个可迭代内容进行合并localsglobals()sorted():排序将列表里面得每一项传到key,根据key进行排序filter:筛选map""""""# --------------zip()--------------#eg1lst1 = ["小鲁班", "蔡文姬"]lst2 = [2, 1]lst3 = ["射手", "辅助"]result = []for i in range(len(lst1)): first = lst1[原创 2022-05-18 08:41:20 · 41 阅读 · 0 评论 -
python3学习之路 -- 4.12)匿名函数
"""匿名函数: lambda表达式 语法: 变量 = lambda 参数1,参数2,... : 返回值"""def func(a,b): return a+bret = func(1,2)print(ret)#改成lambda 表达式fn = lambda a, b : a + bprint(fn)原创 2022-05-18 08:41:03 · 44 阅读 · 0 评论 -
python3学习之路 -- 4.11)推导式
"""-------------------------------------------------------------------------------------------推导式: 简化代码 语法: 列表推导式:[数据 for循环 if条件判断] 集合推导式:{数据 for循环 if条件判断} 字典推导式:{k:v for循环 if条件判断}生成器表达式:(数据 for循环 if条件判断) --> 不叫元组推原创 2022-05-18 08:40:46 · 49 阅读 · 0 评论 -
python3学习之路 -- 4.10)生成器
"""-------------------------------------------------------------------------------------------1. 生成器 generator:本质就是迭代器2. 创建生成器的2种方案: 2.1. 生成器函数 2.1.1 生成器函数中有一个关键字yield 2.2.2 生成器函数中执行的时候并不会执行函数,得到的是生成器函数 2.2 生成器表达式3. yield:只要函数中出原创 2022-05-18 08:40:30 · 50 阅读 · 0 评论 -
python3学习之路 -- 4.9)迭代器
"""1. for 变量 in 可迭代: pass可迭代:str,list,tuple,dic,set,open()可迭代的数据类型都会提供一个迭代器,这个迭代器会将数据类型中的数据逐一的拿到2. 获取迭代器的2种方案: 1. iter() 内置函数可以直接拿到迭代器 2. __iter__ 特殊方法(用的不多) it = "呵呵哒".__iter__()3. 从迭代器中拿到数据: 1. next() 内置函数 2. __iter__() it = "原创 2022-05-17 21:32:53 · 189 阅读 · 0 评论 -
python3学习之路 -- 4.8)装饰器
"""回顾函数: 1. 函数可以作为参数进行传递 2. 函数可以作为返回值进行返回 3. 函数名称可以当作变量进行赋值操作装饰器: 1. 本质是一个闭包 2. 作用: 在不改变原有函数调用的情况下,给函数增加新的功能 即:可以在函数前后添加新功能,但不改变原来的代码 3. 通用装饰器写法: def wrapper(fn): wrapper:装饰器,fn:目标函数 def inner(*原创 2022-05-17 21:32:42 · 86 阅读 · 0 评论 -
python3学习之路 -- 4.7)闭包
"""闭包:本质,内层函数对外层函数的局部变量的使用,此时内层函数被成为闭包函数 1. 可以让一个变量常驻内存 2. 避免全局变量被修改"""原创 2022-05-17 21:32:31 · 44 阅读 · 0 评论 -
python3学习之路 -- 4.6)函数的嵌套
'''函数可以嵌套函数函数可以作为一个返回值返回函数可以作为参数进行互相传递总:函数名实际就是一个变量名,都表示一个内存地址'''#eg1嵌套函数:def func1(): print(123) def func2(): print(456) def func3(): print(789) print(1) func3() print(2) print(3)原创 2022-05-17 21:32:12 · 161 阅读 · 0 评论 -
python3学习之路 -- 4.5)函数的作用域
'''作用域:变量的访问权限和作用域相关的2个关键字:1. global:再局部,引入全局变量2. nonlocal:在局部,引入外层的局部变量'''#eg1 在函数内部修改全局的变量 globala = 10def func(): global a #把外面的全部变量引入到局部 a = 20 #创建一个局部变量,并没有改变全局变量中的afunc()print(a)'''打印:20'''#eg2 在局部引入外层的局部变量def func():原创 2022-05-17 21:32:00 · 39 阅读 · 0 评论 -
python3学习之路 -- 4.4)函数语法
'''函数的嵌套变量的作用域闭包装饰器def wrapper(fn): def inner(*args, **kwargs): ret = fn(*args, **kwargs) return ret return inner@wrapperdef func() pass迭代器生成器 yield推导式匿名函数python内置函数 sorted,filter,map''''''-----------------原创 2022-05-17 21:31:43 · 31 阅读 · 0 评论 -
python3学习之路 -- 4.2)函数的返回值
'''返回值:函数执行后,会给调用方一个结果,该结果就是返回值关于return: 函数只要执行到return,函数会立即停止并返回内容,函数内的return的后续代码不会执行 1. 如果函数没有return,默认会返回None 2. 写return 2.1 只写return,后面没有值,此时接收到的依然是None,会让程序停止,后续程序不会继续执行,有点像循环中的break 2.2 return 值,表示函数有一个返回值,外界可以收到一个数据(用原创 2022-05-17 21:31:32 · 392 阅读 · 0 评论 -
python3学习之路 -- 4)函数
'''1. 函数的概念:对某一个特定的功能或者代码块进行封装,再需要的时候进行调用2. 定义:def 函数的名字(): 被封装的功能或者代码块-->函数体'''原创 2022-05-17 21:30:55 · 28 阅读 · 0 评论 -
运维篇 -- TCP(三握四挥)
看图说话原创 2022-04-23 18:52:12 · 988 阅读 · 0 评论 -
python3学习之路 -- 4.1)函数的参数
'''#------------------------------参数------------------------------分类:1. 形参位置参数;默认值参数:函数声明时给变量一个默认值,若实参不传递信息,默认值生效动态传参: *args,表示接受所有位置参数的动态传参,接收到的值会被放到元组 **kwargs,表示关键字的动态传参,接收到的所有参数会被处理成字典顺序:位置参数 > *args > 默认值参数 > **kwargseg1:de原创 2022-05-17 21:31:18 · 43 阅读 · 0 评论 -
python3学习之路 -- 3.9)file_operation
import osimport time #和时间相关的模块'''#-----------------------------------------------------------------------------#找到这个文件,双击打开open(文件路劲, mode="", encoding=""): 文件路径: 1.绝对路径 2. 相对路径 mode: r: read 读取原创 2022-05-17 21:30:19 · 97 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习14 -- 用户登陆日志/淘宝自动答复 - 文件读写
# 实操案例15 -- 任务1 -- 记录用户登陆日志 -- 时间转换import timedef show_info(): print('输入提示数字,执行相应操作:0-退出 1-查看登陆日志:')#记录日志def write_loginfo(username): with open('log.txt','a') as file: s = f'用户{username},登陆时间:{time.strftime("%Y-%m-%d %H:%M:%S",time.l.原创 2022-05-05 21:33:39 · 100 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习13 -- 高铁、计算日期 - 函数
暂未解决pip安装模块问题,此示例暂时搁置# 实操案例14 -- 任务1 -- 模拟高铁售票系统 -- prettytable模块、函数# import prettytable# 实操案例14 -- 任务2 -- 推算日期 -- datetime模块、函数import datetimedef inputdate(): indata = input('请输入开始日期:(20220505)后按回车:') indata = indata.strip() datestr = i原创 2022-05-05 16:49:33 · 467 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习12 -- 乐器、车 - 类(面向对象 - 封装、继承、多态)
# 实操案例13 -- 任务1 -- 乐器 - 类class Instrument(): #定义一个乐器类 def make_sound(self): #定义一个发声的函数 passclass Erhu(Instrument): #二胡类,属于乐器,可以继承乐器类 def make_sound(self): #重新发声方法 print('二胡在演奏')class Pinao(Instrument): def make_sound(self.原创 2022-05-05 00:32:16 · 529 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习11 -- 圆面积和周长、学生类 - 列表、类
'''九九乘法表'''i = 1while i <= 9: j = 1 while j <= i: print(j, "*" ,i, "=" ,j*i, end=" ") j += 1 print() i += 1样式展示:原创 2022-04-12 13:36:07 · 114 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习10 -- 成绩、三角形 - 异常(raise、try)
# 实操案例11 -- 任务1 -- 输入学生成绩 - 异常 raise、try''' raise 方式score = int(input('请输入你的分数:'))if 0 <= score <= 100: print('分数为:',score)else: raise Exception('分数不正确!')''''''try方式'''try: score = int(input('请输入你的分数:')) if 0 <= score <.原创 2022-05-05 00:03:37 · 240 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习9 -- 计算器、猜数字 - 函数
# 实操案例10 -- 任务1 -- Mini计算器def calc(a,b,op): #输入2个数字和一个运算符 if op == '+': return add(a,b) elif op == '-': return sub(a, b) elif op == '*': return mul(a,b) elif op == '/': if b != 0: return div(a,b.原创 2022-05-04 21:34:28 · 107 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习8 - 字符串、函数
# 实操案例9 -- 任务1 -- 统计字符串中出现指定字符的次数(忽略大小写) - 函数def get_count(s,ch): # s 字符串,ch表示要统计的字符 count = 0 for item in s: if ch.upper() == item or ch.lower() == item: count += 1 return countif __name__=='__main__': s = 'hellopYth.原创 2022-05-04 21:11:46 · 51 阅读 · 0 评论 -
python3学习之路 -- 7)初级练习7 - 元组、集合、enumerate
# 实操案例8 -- 任务1 -- 我得咖啡你做主 - 自己的方式,不太好print('您好!欢迎光临咖啡屋\n本店经营的咖啡有:')kafei = ['蓝山','拿铁','猫屎','卡布奇诺']for index,values in enumerate(kafei,1): print(str(index)+'.',values)choise = input('请输入您想要的咖啡序号:')if choise == '1' or choise == '2' or choise == '3.原创 2022-05-04 20:42:33 · 112 阅读 · 0 评论