自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 MySQL:MySQL Workbench建表和输入查询数据

MySQL Workbench相关操作创建表并确定它们之间的关系一对多:在多的那一方那里添加外键一对一:一对多的特殊情况多对多:建第三个表将多对多关系拆分为两个一对多关系-- 如果存在名为school的数据库就删除它drop database if exists `school`;-- 创建名为school的数据库并设置默认的字符集和排序方式create database `school` default character set utf8mb4 collate utf8mb4_0900

2022-03-29 20:36:30 2091

原创 MySQL:安装软件和基本操作

SQL安装1.MySQL8下载地址:https://dev.mysql.com/downloads/workbench/https://dev.mysql.com/get/Downloads/MySQLInstaller/mysql-installer-community-8.0.28.0.msi2.MySQL安装指示启动MySQL:徽标键+R —> 输入以下字符串运行MySQL 8.0 Command Line Client-Unicode:输入密码连接运行M

2022-03-29 20:30:13 952

原创 Python爬虫:指令创建虚拟环境和程序打包

指令创建虚拟环境和程序打包指令创建虚拟环境1.Python程序运行的方式使用专业的Python开发工具(例如: Pycharm)用指令运行Python程序:(win)python py文件路径(mac)python3 py文件路径2.操作系统常用指令查看当前文件夹中的内容:dir(win)、ls(mac)cd指令 - 进入文件夹cd 文件夹路径注意:Windows操作系统,如果要进入的文件夹和你当前所在的文件夹不在一个盘里,那么cd前需要先切盘,切盘的方法 -

2022-03-29 20:19:09 1434

原创 Python爬虫:多线程的应用和pdf文件相关操作

多线程的应用前程无忧岗位爬虫import requestsfrom re import searchfrom multiprocessing import Process, Queuefrom concurrent.futures import ThreadPoolExecutorfrom threading import Threadimport json, csvdef get_html(name, page, queue): print(f'====={name}: {pa

2022-03-24 19:30:14 1315

原创 Python爬虫:通信和线程池进程池

通信和线程池进程池线程间通信导入线程队列from queue import Queueimport timefrom random import randint同一个进程中的多个线程可以直接通信(一个线程可以直接使用另外一个线程中产生的数据)通信原则:使用全局变量from threading import Thread, current_threadfrom queue import Queueimport timefrom random import randint#

2022-03-23 20:49:12 178

原创 Python爬虫:常见的反爬

常见的反爬爬虫流程确定爬虫对象(爬哪个网页的数据)找接口有接口:直接对接口发送请求成功(直接json解析)失败就进入下一步没有接口,直接进入下一步用requests直接对网页地址发送请求请求成功 -> 解析数据(bs4、lxml)请求失败 -> 尝试添加user-agent和cookie,成功就解析,失败进入下一步用selenium打开网页,获取网页内容请求成功 -> 解析数据(bs4、lxml)请求失败 -> 找失

2022-03-21 19:53:40 1174

原创 Python爬虫:选项卡切换和xpath解析

选项卡切换和xpath解析京东商品50页数据爬虫from selenium.webdriver import Chrome, ChromeOptionsfrom selenium.webdriver.common.keys import Keysimport time, csvfrom bs4 import BeautifulSoupoptions = ChromeOptions()options.add_experimental_option('excludeSwitches', ['en

2022-03-19 23:44:51 797

原创 Python爬虫:selenium高级用法

selenium高级用法安居客租房信息爬取import refrom selenium.webdriver import Chromefrom bs4 import BeautifulSoupimport time, os, csvb = Chrome()is_first = True # 是否是第一次def save_data(html: str): soup = BeautifulSoup(html, 'lxml') all_house_div = sou

2022-03-19 23:43:05 364

原创 Python爬虫:接口和selenium基础-

接口和selenium基础豆瓣电影top250信息爬取import requestsfrom bs4 import BeautifulSoupfrom re import searchimport csvimport timedef get_one_page(page): headers = { 'cookie': 'bid=g16urOELfcQ; douban-fav-remind=1; __gads=ID=3f57e16f48f82cf2-2222dd78d6

2022-03-19 23:41:34 615

原创 Python爬虫:requests和bs4

requests和bs4requests的用法requests是Python用于网络(http)请求的第三库,也是爬虫获取网络数据的重要工具,使用的时候需要导入import requests1. 向目标地址(网络地址)发送请求语法:requests.get(url,*,headers, proxies, timeout) - 以指定的方式给地址发送网络请求,返回值是服务器返回的响应对象参数说明:url - 字符串;请求的网络地址,可能是目标网站的网址也可能是数据接口

2022-03-19 23:40:22 2431

原创 Python中excel文件操作

excel文件操作excel文件读操作1.获取工作簿对象openpyxl.load_workbook(文件路径)workbook = openpyxl.load_workbook('files/demo2.xlsx')2.获取工作表获取当前工作簿中所有的工作表的表名names = workbook.sheetnamesprint(names)获取工作表对象工作簿对象[表名]student_sheet = workbook['学生表']teacher_sheet = w

2022-03-13 15:57:26 1338

原创 Python三大神器(迭代器、生成器、装饰器)和csv文件操作

三大神器和csv文件操作迭代器1.什么是迭代器(iter)迭代器是容器型数据类型特点:无法通过打印迭代器查看元素、也无法统计元素个数需要使用元素的时候必须将元素从迭代器中取出,取出以后该元素就从迭代器中消失2.创建迭代器 - 将其他序列转换成迭代器i1 = iter('hello')i2 = iter([10, 20, 30, 40])i3 = iter({'a': 10, 'b': 20})i4 = iter({100, 200, 300})print(i1)

2022-03-13 15:56:03 454

原创 Python正则表达式和练习

正则表达式1.匹配类符号1.正则表达式正则表达式是一种可以让一些复杂的字符串问题变得简单的工具。2.正则语法(通用)re模块:fullmatch(正则表达式, 字符串) - 判断整个字符串是否满足正则表达式描述的规则(完全匹配)python提供正则表达式的方法:提供一个字符串,字符串内容是一个正则表达式,这个字符串的最前面需要加rpython的正则表达式: r’正则’js的正则表达式: /正则/oc的正则表达式:“正则”正则语法内容包括:匹配类符号、控制次数的符号、分

2022-03-09 20:13:35 3521 3

原创 Python面向对象和json及练习

面向对象和json1.属性1.属性定义类就是用代码描述清楚这个类是拥有哪些相同功能和哪些相同属性的对象的集合方法(函数)用来描述相同功能属性(变量)用来描述相同属性属性分为两种:类属性(字段)、对象属性类属性怎么定义:直接定义在类中的变量就是类属性怎么使用:通过 ‘类.’ 的方式去使用什么时候用:如果属性值不会因为对象不同而不一样的时候对象属性怎么定义:以 ‘self.属性名 = 值’ 的方式定义在__init__方法中怎么使用:通过 ‘对象.’ 的方式去使用什么时

2022-03-08 20:00:00 229

原创 Python面向对象基础

面向对象1.编程思想的转变面向过程编程(穷人思想)遇到问题马上相当的是解决问题的步骤和方案工具:思路+基本语法函数式编程(小资思想)遇到问题马上想到的是是否已经存在一个函数具备解决问题的能力,如果有直接用,没有就造一个工具:函数面向对象编程(富豪思想)遇到问题马上想到有没有一个对象具备这个功能,如果有直接用,没有就创建这个对象(创建对象还要看有没有类,没有类还要创建类)工具 - 类和对象2.类和对象1.认识类和对象类:类是具有相同功能和相同属性

2022-03-07 19:25:54 68

原创 Python文件操作和简易学生管理系统

文件操作1.文件操作基础1.数据持久化背景:程序中数据默认保存在运行内存中,保存在运行内存中的数据在程序运行结束后会被销毁​ 如果程序中的数据在程序结束后不销毁必须将数据通过文件的形式保存到磁盘中数据持久化又叫数据本地化,就是将程序中的数据存储到文件中的过程常见的数据持久化工具:数据库(.db、.sqlite)、json文件、csv文件、excel文件、txt文件等2.文件操作 - 操作的是文件内容基本操作流程:打开文件 -> 操作文件(读、写) -&gt

2022-03-06 23:45:50 240

原创 Python常用模块

常用模块1.os模块os模块的作用os模块 - 文件或者文件夹(目录)或者路径相关操作例如:创建文件夹、创建文件、删除文件、判断文件是否存在、获取绝路径、获取一个文件夹中所有的文件等等返回当前工作目录import osprint(os.getcwd()) #D:\千锋\01语言基础\myday14-常用模块获取指定文件夹中所有的内容的名字os.listdir(文件夹路径)result = os.listdir(r'D:\千锋')print(resul

2022-03-03 20:22:02 80

原创 Python分支和循环及练习

分支和循环笔记流程控制顺序结构代码从上往下依次执行,每天语句只执行一次。(默认)分支结构根据条件选择执行或者不执行部分代码(使用if)循环结构让代码重复执行(for、while)if分支结构if单分支结构 - 如果…就…解决的问题:满足条件执行某个操作,添加不满足的时候就不执行语法:if 条件语句:​ 代码段(满足条件才会执行的代码)说明:if - 关键字;固定写法条件语句 - 可以任何有结果的表达式,包括:具体的数据、运算表达式(赋值运算例外)、已

2022-03-02 20:56:07 1611

原创 Python中while循环和循环关键字及练习

04while循环和循环关键字1.三目运算符python的三目运算符:语法:值1 if 表达式 else 值2运算规则:如果表达式的结果为True整个运算的结果就是值1,否则是值2# 案例1:a如果大于10result是0否则result是1# 方法一:a = 100result = 0 if a > 10 else 1print(result)# 方法二:a = 100if a > 10: result = 0else: result

2022-03-02 20:48:35 2467

原创 Python列表和元组及练习

列表1.列表相关操作和相关函数1.列表相关操作数学运算符: +、*列表1 + 列表2 - 将两个列表合并成一个新的列表list1 = [10, 20, 30]list2 = [100, 200]result = list1 + list2print(result) # [10, 20, 30, 100, 200]列表 * N、 N * 列表 - 将列表中的元素重复N产生一个新的列表print(list1 * 3) # [10, 20,

2022-03-02 20:42:43 2127

原创 Python字典和练习

字典1.认识字典1.字典和列表的选择:需要同时保存多个数据的时候,如果多个数据的意义相同(不需要区分)就使用列表;如果多个数据的意义不同就使用字典2.认识字典(dict)是容器型数据类型;将{}作为容器的标志,里面多个键值对用逗号隔开:{键1: 值1, 键2: 值2, …}键值对的格式: 键:值特点字典是可变的(支持增删改)字典是无序(不支持下标,元素顺序不影响结果)对元素的要求字典的元素是键值对键的要求: 键必须是不可变的类型的数据(数字、字符串、布尔、元组等

2022-03-02 20:38:04 149

原创 Python集合和字符串及练习

集合认识集合1.认识集合(set)集合是容器型数据类型,将{}作为容器的标志里面多个数据用逗号隔开:{数据1, 数据2, 数据3,…}可变的(支持增删改);无序(不支持下标操作)元素的要求:必须是不可变的数据元素是唯一# 空集合set1 = set()print(type(set1), len(set1))# 集合是无序的print({1, 2, 3} == {3, 2, 1}) # True# 集合元素必须是不可变类型的数据set1 = {1, 'ac

2022-03-02 20:31:25 491

原创 Python函数基础和练习

函数基础1.定义函数1. 什么是函数概念函数就是实现某一特定功能的代码的封装 -> 一个函数对应一个功能(函数存储的功能)分类(按照函数由谁创建的进行分类)系统函数 - 有Python语言已经创建好的函数(Python自带的函数),例如:print、input、type、id、max、min、sorted、sum等自定义函数 - 由程序员自己创建的函数2.定义函数(造机器)语法:def 函数名(形参列表): 函数说明文档 函数体

2022-03-02 20:22:02 481

原创 Python函数进阶和练习

函数进阶1.匿名函数匿名函数的本质还是函数,他们除了定义的语法不同,其他的东西都一样注意:匿名只能用来实现功能很简单的函数语法:函数名 = lambda 形参列表: 返回值转换成普通:def 函数名(形参列表): return 返回值 # 举例:sum2 = lambda num1, num2: num1 + num2print(sum2(20, 30))# 练习1:写一个匿名函数判断指定的数是否是偶数,如果是返回True,否则返回Falseis_e

2022-03-02 19:59:18 122

原创 Python模块包和异常

模块包和异常1.模块1.认识模块python中一个py文件就是一个模块模块分为系统模块和自定义模块两种系统模块: python自带的模块,例如:functools、math、random、re、time、datetime、turtle、smtplib、socket、threading等自定义模块: 由程序员自己创建的模块2.导入模块 - 怎么在一个模块中去使用另外一个模块中的内容如果我们想要使用的内容(变量、函数、类)在另外一个模块中,可以用,但是使用之前必须先导入一个模块

2022-03-02 17:42:00 39

原创 Python字符串和练习

字符串字符串相关函数1.相关函数:len、str、evalstr(数据) - 将指定数据转换成字符串(任何类型的数据都可以转换成字符串; 转的时候是直接在数据的打印值外面加引号)str(100) # '100'str(True) # 'True'list1 = [10,20,30]str(list1) # '[10, 20, 30]'list2 = ["abc", "余婷"]str(list2) # "['abc', '余婷']"print(list2)

2022-02-27 22:00:23 649

原创 Python列表的增删改查和练习

认识列表非容器 - 一个变量只能保存一个数据(只有一个格子的盒子)容器 - 一个变量可以同时保存多个数据(有多个格子的盒子)什么是列表(list)1.长什么样列表是容器型数据类型(一个列表可以同时保存多个数据);将[]作为容器的标志,里面多个元素用逗号隔开: [元素1, 元素2, 元素3, …]2.特点列表是可变的(可变指是列表中元素的个数、元素的值和元素的顺序可变);列表是有序的(每个元素都位置对应的索引值)举例:​ [10, 20, 30] -> [10, 20

2022-02-21 22:10:55 1175

原创 Python变量运算符和练习

变量和运算符变量定义变量变量就是一种专门用来保存数据的容器(变量就是用来保存数据的,保存完数据以后,使用变量就是使用变量中保存的数据)语法:变量名 = 数据说明:变量名 - 由程序员自己命名要求:a.是标识符 b.不能是关键字​ 规范:a.见名知义 b.不使用系统的函数名、类名和模块名​ c.字母都小写,多个单词之间用下划线隔开= - 赋值符号;固定写法数据 - 可以是任何有结

2022-02-16 23:49:36 1395

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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