- 博客(30)
- 收藏
- 关注
原创 day4-反爬和正则
requests免登录运行环境:import requestsdef get_html(url): headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36', 'cookie': '_zap=4d58cb38-ec48-47b
2021-11-05 20:30:05
238
原创 day3-selenium基本用法
selenium基本用法运行环境:from selenium.webdriver import Chrome1. 创建浏览器对象b = Chrome('files/chromedriver')2. 打开页面b.get('https://www.qidian.com/rank/yuepiao/month10/')3.获取网页数据print(b.page_source)4.关闭网页b.close()selenium常见配置运行环境:from selenium.webdriver i
2021-11-04 20:37:22
203
原创 day2-json请求和xpath解析
json数据1. json的作用让不同编程语言之间可以进行有效的数据交流(几乎所有的高级语言都支持json数据格式)2. 什么是json一个有效的json有且只有一个数据,并且唯一的这个数据必须是json支持的类型的数据。json支持的数据类型:数字 - 直接写,例如:100、+23、-45、12.5、3e4字符串 - 加双引号,只有双引号,例如:“yuting”、“重庆”、“abc\n123”布尔 - 只有true和false两个值空值 - null数组(列表)
2021-11-03 20:34:52
494
原创 day1-requests的基本用法
requests的用法运行环境:import requestsdef get_web_data(url: str): # 1. 发送请求获取响应 # requests.get(目标地址) headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari
2021-11-02 20:20:53
298
原创 day16-时间和常用文件操作
datetimem模块1.datetime1) 获取当前时间t1 = datetime.now()print(t1, type(t1)) # 2021-11-01 19:19:16.405182 <class 'datetime.datetime'>2) 创建时间对象t2 = datetime(2010, 10, 3)print(t2) # 2010-10-03 00:00:00t3 = datetime(2011, 3, 4, 10, 30)print(t3)
2021-11-01 20:50:20
64
原创 day15-面向对象作业
定义一个狗类和一个人类:狗拥有属性:姓名、性别和品种 拥有方法:叫唤人类拥有性:姓名、年龄、狗 拥有方法:遛狗class Dog: def __init__(self, name, gender, breed): self.name = name self.gender = gender self.breed = breed def bark(self): return f'汪汪汪' class P..
2021-11-01 09:11:47
44
原创 day15-面向对象和时间模块
属性1. 属性 - 类属性、对象属性 (属性的本质就是变量)1) 类属性a.怎么定义:直接定义在类中的变量就是类属性b.怎么使用:用 ‘类.’ 的方式来使用c.什么时候用:属性不会因为对象不同而不一样的时候使用2) 对象属性a.怎么定义:以 'self.属性名=值’的形式定义在__init__方法中b.怎么使用:用 ‘对象.’ 的方式来使用c.什么时候用:属性会因为对象不同而不一样的时候使用class Person: """人类""" # 类属性: a、x a
2021-10-29 20:13:56
58
原创 day14-异常和面向对象
异常捕捉1. 异常 - 错误代码在执行过程中如果遇到异常,程序会中断执行(会提前结束)2. 捕获异常捕获异常的目的:在程序遇到异常的时候可以继续执行什么时候需要捕获异常:明明知道可能会出现异常,但是又没有办法通过修改代码来避免异常,程序在异常出现的时候要继续执行。结构1 - 捕获所有类型的异常try: 代码段1(需要捕获异常的代码)except: 代码段2(捕获到异常后会执行的代码)finally: 代码段执行过程:先执行代码段1,如果没有出现异常就不会执
2021-10-28 20:53:17
64
原创 day13-包和文件操作
导入模块的原理1. 导入原理当代码执行到导入模块的时候,系统会自动进入指定模块,将模块中的代码全部执行一遍;如果在同一个程序中,同一个模块导入多次,对应的代码只会执行一次。# import test# import test# from test import a# from test import sum_yt# print(f'1+2+3+...+10:{sum_yt(10)}')from test import downloaddownload('肖申克的救赎')2. 导入
2021-10-27 20:12:15
132
原创 day12-实参高阶函数作业(1)
已经列表points中保存的是每个点的坐标(坐标是用元组表示的,第一个值是x坐标,第二个值是y坐标)points = [ (10, 20), (0, 100), (20, 30), (-10, 20), (30, -100)]以下问题使用实参高阶函数来解决1)获取列表中y坐标最大的点result = max(points, key=lambda x: x[-1])print(result)2)获取列表中x坐标最小的点result = min(points, key=lambda ..
2021-10-27 09:08:04
56
原创 day12-实参高阶函数迭代器和生成器
函数的本质1. 函数就是变量Python中定义函数其实就是定义一个类型是function的变量,函数名就是变量名变量 = lambda 参数列表:返回值相当于:def 变量(参数列表): return 返回值实参高阶函数1. map - 将一个或者多个序列中的元素通过指定规则创建一个新的序列map(函数, 序列) - 将序列中的元素通过函数指定的规则转换成一个新的序列中的元素函数要求: 有且只有一个参数 - 指向后面的这个序列中的每个元素有一
2021-10-26 21:01:19
78
原创 day11-函数进阶
1. 函数调用过程1. 函数栈区间的声明周期每次调用函数的时候,系统会自动为这个函数创建一个临时的栈区间,用来保存在这个函数中产生的数据。当函数调用结束,这个栈区间会自动释放,里面保存的数据也会自动销毁。def func1(): a = 100 # a是保存在func1对应的临时栈区间中的 func1()# print(a) # NameError: name 'a' is not defined。 函数调用结束的时候func1对应的临时栈区间会自动释放,数
2021-10-25 22:21:05
74
原创 day10-函数基础作业
写一个函数,实现maketrans的功能,将两个字符串转换成一个字典,第一个字符串中的字符是键,第二个字符串中的字符是值第一个字符串: ‘abcmn’ 第二个字符串:‘一二三四五’结果:{‘a’: ‘一’, ‘b’: ‘二’, ‘c’: ‘三’, ‘m’: ‘四’, ‘n’: ‘五’} # 方法一def maketrans1(str1, str2): lenght = len(str1) return dict({str1[x]: str2[x] for x in range(le..
2021-10-25 11:27:20
52
原创 day9-字符串作业(1)
编写一个程序,交换指定字典的key和value。 例如:dict1={'a':1, 'b':2, 'c':3} --> dict1={1:'a', 2:'b', 3:'c'} dict1={'a':1, 'b':2, 'c':3}new_dict1 = {dict1[x]: x for x in dict1}print(new_dict1)编写一个程序,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串 例如: 传入'12a&bc12d-+' ..
2021-10-25 10:08:48
63
原创 周末作业-循环练习题(1)
判断101-200之间有多少个素数,并输出所有素数。count = 0for x in range(101, 201): if x % 10:求整数1~100的累加值,但要求跳过所有个位为3的数。sum1 = 0sum2 = 0for x in range(1, 101): sum1 += x if x % 10 == 3: sum2 += xprint(sum1-sum2)有⼀分数序列:2/1,3/2,5/3,8/5,13/8,21/..
2021-10-25 08:56:14
122
原创 day10-字符串和函数总结
字符串格式化1. 字符串内容不确定的解决方案name = '小明'age = 18money = 23891.23# xxx今年xx岁,月薪:xxxx元# 方案一: 字符串拼接message = name + '今年' + str(age) + '岁,月薪:' + str(money) + '元'print(message)# 方案二:字符串格式占位符message = '%s今年%d岁,月薪:%.2f元' % (name, age, money)print(message)#
2021-10-22 20:31:02
117
原创 day9-字符串
1. center、rjust、ljust、zfill字符串.center(长度, 填充字符)字符串.rjust(长度, 填充字符)字符串.ljust(长度, 填充字符)字符串.zfill(长度) == 字符串.rjust(长度, ‘0’)str1 = 'abc'print(str1.center(7, '1')) # '11abc11'print('你好'.center(6, '*')) # '**你好**'print('你好'.center
2021-10-21 19:10:28
44
原创 day8-字符串和集合作业
用三个集合表示三门学科的选课学生姓名(一个学生可以同时选多门课)obj1 = {'小明', '小刚', '小红', '小利', '小李', '小黄'}obj2 = {'小明', '小绿', '小红', '小黄', '小莉', '小兰'}obj3 = {'小橘', '小兰', '小黄', '小陈', '小何', '小明'}求选课学生总共有多少人s1 = obj1 | obj2 | obj3print('选课学生人数:', len(s1))求只选了第一个学科的人的数量和对应的名字..
2021-10-21 11:56:01
79
原创 day8-集合和字符串总结
集合1.什么事集合(set)集合是容器型数据类型,将{}作为容器的标志:{元素1, 元素2, 元素3,…}。可变的;无序的元素 - 必须是不可变类型的数据; 唯一的(自带去重功能)1) 空集合s1 = set()print(len(s1), type(s1)) # 0 <class 'set'>2) 集合无序print({1, 2, 3} == {3, 2, 1}) # True3) 集合的元素是不可变的数据s1 = {10, 2.3, 'abc', (1
2021-10-20 19:44:08
76
原创 day7-字典作业(1)
定义一个变量保存一个学生的信息,学生信心中包括:姓名、年龄、成绩(单科)、电话、性别date1 = [['姓名', '黄晨思'], ['年龄', '26'], ['语文', '95'], ['数学', '99'], ['电话', '15283655443'], ['性别', '男']]result = dict(date1)print(result)定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )统计不及格学生的个..
2021-10-19 23:36:33
139
原创 day7-字典和元组总结
元组1.什么是元组(tuple)元组是容器型数据类型(序列),将()作为容器的标志,里面多个元素用逗号隔开:(元素1, 元素2, 元素3,…)。元组不可变(不支持增删改);元组是有序的(支持下标操作)元素: 任何类型的数据空元组t1 = ()print(t1, type(t1)) # () <class 'tuple'>2. 元组就是不可变的列表列表中和可变无关的操作,元组都支持1) 查t3 = ('长津湖', '战狼', '我是特种兵', '阿凡达', '悬崖上的金
2021-10-19 19:44:37
92
原创 day6-列表作业
1.创建一个列表,列表中有10个数字, 保证列表中元素的顺序,对列表进行排重,并对列表使用进行降序排序例如:随机生成了[70, 88, 91, 70, 107, 234, 91, 177, 282, 197] --- 去重之后 [70, 88, 91, 107, 234, 177, 282, 197] ---- 降序排序 [282, 234, 197, 177, 107, 91, 88, 70]list1 = [70, 88, 91, 70, 107, 234, 91, 177, 282,
2021-10-19 08:54:34
49
原创 day6-循环练习和列表总结
列表相关操作1.列表的数学运算:+、*1) 列表1 + 列表2 - 将两个列表合并产生一个新的列表 (不会修改列表1和列表2)list1 = [10, 20, 30]list2 = [100, 200]result = list1 + list2print(result) # [10, 20, 30, 100, 200]# print(list1) # [10, 20, 30]2) 列表 * N / N * 列表 - 列表重复N次产生一个新的列表r
2021-10-18 20:03:38
154
原创 day4-循环作业
1. 基础题输入年份,如果输入的年是闰年打印'闰年'否则打印'平年'year = 2001if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0: print('闰年')else: print('平年')使用for和while循环输出 0~100内所有3的倍数。for x in range(0, 100, 3): print(x) x = 0while x <= 100: pr
2021-10-18 09:03:51
81
原创 day5-列表作业_
1.已知一个数字列表,求列表中心元素。list1 = [1, 2, 3, 4, 5, 6, 7]print([3])2.已知一个数字列表,求所有元素和。list1 = [1, 2, 3, 4, 5, 6, 7, 8]sum1 = 0for x in list1: sum1 += xprint('所有元素和:', sum1)3.已知一个数字列表,输出所有奇数下标元素。list1 = [1, 2, 3, 4, 5, 6, 7, 8]for x in range(len(list1
2021-10-18 09:03:17
627
原创 day5-列表总结
循环的else结构1. else1) Python完整的循环结构for 变量 in 序列:for 变量 in 序列: 循环体else: 代码段 while 条件语句: 循环体else: 代码段注意:原来循环else的存在不影响循环的执行当循环自然结束else后面的代码会执行,如果循环是因为遇到break而结束的else后面的代码不会执行。练习:判断指定的数是否是素数(素数就是质数,即除了1和它本身以外不能被其他的数整除的数)num = 5fo
2021-10-15 20:03:40
48
原创 Day4-分支和循环总结
今天讲的内容有:if多分支结构、三目运算符、for循环、while循环、continue和break。if多分支结构1.if多分支结构 - 根据不同的条件做不一样的事情1)if - elif - else - 不同条件之间存在:其中一个条件成的时候,别的条件一定不会成立if 条件1: 代码段1elif 条件2: 代码段2elif 条件3: 代码段3...else: 代码段N执行特点:如果前面的条件成立,那么后面的条件不会再判断(后面的条件的判断是在
2021-10-14 20:59:43
84
原创 day3-运算符和分支作业
选择题print(100 - 25 * 3 % 4) 应该输出什么? (B)A. 1B. 97C. 25D. 0下列哪种说法是错误的(A)。A. 除字典类型外,所有标准对象均可以⽤于布尔测试B. 空字符串的布尔值是FalseC. 空列表对象的布尔值是FalseD. 值为0的任何数字对象的布尔值是False下列表达式的值为True的是(B)。A. 3>2>2B. 1 and 2 != 1C. not(11 and 0 != 2)D. 10 < 20
2021-10-14 09:08:34
34
原创 day3-运算符和运算分支总结
今天总结的内容有:同时定义多个变量、数学运算符、比较运算符、逻辑运算符、赋值运算、运算符优先级、if分支结构。同时定义多个变量1)同时定义多个变量赋相同的值变量名1 = 变量名2 = 变量名3 = … = 数据a = b = c = 100print(a, b, c) 2)同时定义多个变量赋不同的值变量名1, 变量名2, 变量名3,… = 数据1, 数据2, 数据3,…x, y = 100, 200print(x, y)应用:已知两个变量m = 10,n = 20,写代码交换这两个变
2021-10-13 20:46:47
318
原创 Day2-基础语法与变量的笔记
Day2-基础语法与变量的笔记今天主要的学习内容有:常用快捷键、基础语法、输入和输出函数、变量。常用快捷键ctrl + / - 注释和取消注释ctrl + s - 保存ctrl+ c - 复制(拷贝)ctrl + v - 粘贴ctrl + x - 剪切ctrl + z - 撤销ctrl + shift + z - 反撤销ctrl + a - 全选基础语法1.注释高级语言的代码由两个部分组成: 有效代码(会被编译器或者解释
2021-10-13 17:41:06
60
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人