
Python记录册
文章平均质量分 57
SamRol
这个作者很懒,什么都没留下…
展开
-
【Python】爬虫-----数据解析之CSS解析
如何使用CSS解析数据?1.导入所需模块import parsel2.把要解析的数据转化为Selector对象selector = parsel.Selector(要解析的内容)3.调用css函数输入解析规则定位class里的h1,并拿到它里面的内容:selector.css('.bookname h1::text').get()定位id,并拿到它里面的内容:selector.css('#content::text').getall() #getall()原创 2022-02-17 16:27:17 · 5697 阅读 · 0 评论 -
【Python】爬虫-----多线程案例
Python创建多线程的方法原创 2022-02-16 22:29:44 · 555 阅读 · 0 评论 -
【Python】pyqt5-----QLabel
QLabel继承自QFrame构造函数QLabel(parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = Qt.WindowFlags()) QLabel(str, parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = Qt.WindowFlags()) 设置对齐 setAlignment(Qt.Alignmen原创 2022-02-10 21:25:57 · 1520 阅读 · 0 评论 -
【Python】pyqt5-----QDialog、QFontDialog、QColorDialog、QFileDialog
QDialog继承自QWidget模态对话框应用程序级别:当该种模态的对话框出现时,用户必须首先对对话框进行交互,直到关闭对话框,然后才能访问程序中其他的窗口。通过exec()来打开对话框——默认值。窗口级别:该模态仅仅阻塞与对话框关联的窗口,但依然允许用户与程序中其它窗口交互,通过open()来打开对话框。非模态对话框...原创 2022-02-09 20:50:23 · 1416 阅读 · 0 评论 -
【Python】pyqt5----QSlider、QDial
QSlider继承自QAbstractSlider原创 2022-02-08 11:37:45 · 524 阅读 · 0 评论 -
【Python】pyqt5-----QComboBox、QFontComboBox
QComboBox继承自QWidget数据操作添加条目项addItem(str) 创建条目项。 addItem(QIcon, str) 创建带图标的条目项。 addItems(Iterable[str]) 添加多个条目项。 插入条目项insertItem(int, str) 在int处插入条目项,int为索引值。 insertItem(int, QIcon, str) 插入带图标的条目项。 insertItems(int, Iterable[原创 2022-02-05 22:08:35 · 2199 阅读 · 0 评论 -
【Python】pyqt5-----QAbstractSpinBox
QAbstractSpinBox继承自QWidget长按步长加快频率设置setAccelerated(bool) 设置长按步长加快频率。 isAccelerated() -> bool 获取是否设置长按步长加快频率。 只读设置setReadOnly(bool) 设置为只读模式。 isReadOnly() -> bool 获取是否设置为只读模式。 ...原创 2022-02-04 17:14:54 · 1936 阅读 · 0 评论 -
【Python】pyqt5-----QLineEdit、QFrame、QAbstractSlider、QTextEdit
QLineEdit继承自QWidgetQLineEdit创建QLineEdit(parent) QLineEdit创建1。 QLineEdit(str, parent) QLineEdit创建2。 文本相关设置setText(str) 设置内容文本。 insert(newText) 在光标处插入文本。 text() 获取真实内容文本。 displayText() 获取用户能看到的内容文本。 输出模式设置setEchoMode(int原创 2022-02-03 00:14:31 · 1642 阅读 · 0 评论 -
【Python】pyqt5-----QPushButton、QCommandLinkButton、QToolButton、QRadioButton、QButtonGroup、QCheckBox
QPushButton继承于QAbstractButton。创建按钮控件QPushButton(parent) 创建控件的同时, 设置父控件。 QPushButton(text, parent) 创建控件的同时, 设置提示文本和父控件。 QPushButton(icon, text, parent) 创建控件的同时, 设置图标, 提示文本和父控件。 菜单相关setMenu(QMenu) 设置菜单。 menu() 获取菜单。 showMenu()原创 2022-01-21 22:01:09 · 1294 阅读 · 0 评论 -
【Python】pyqt5-----QAbstractButton
QAbstractButton继承自QWidget文本相关setText(str) 设置按钮文本。 text() 获取按钮文本。 图片相关setIcon(QIcon("xxx.png")) 设置图标。 setIconSize(QSize(w, h)) 设置图标大小。 icon() 获取图标 iconSize() 获取图标大小 设置快捷键setShortcut("Alt+G") 绑定快捷键。 setText 如果提示文原创 2022-01-19 20:20:07 · 825 阅读 · 0 评论 -
【Python】pyqt5-----QWidget
QWidget是QObject的一个子类,父类的功能子类可以用。一、位置大小设置move(x,y) 操控x,y;包括窗口框架。 resize(width,height) 操控宽和高;不包括窗口框架。 setGeometry(x_noFrame,y_noFrame,width,height) 设置用户区域的x,y,宽度和高度。 adjustSize() 根据内容自适应大小。 setFixedSize() 设定固定尺寸。 ...原创 2022-01-15 16:01:19 · 2732 阅读 · 0 评论 -
【Python】pyqt5-----QObject
这个是我们程序的框架,下面介绍的函数from PyQt5.Qt import *import sysclass Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle("ABCDE") self.resize(500, 500) self.ui() def ui(self): obj = QObject.原创 2021-12-23 12:10:38 · 1671 阅读 · 1 评论 -
【Python】体验pyqt5
一、体验pyqt5from PyQt5.Qt import *import sysapp = QApplication(sys.argv)window = QWidget()window.setWindowTitle("pyqt5窗口")window.resize(600,500)window.move(400,200)lable = QLabel(window)lable.setText("Hello World!")lable.move(300,200)window.s原创 2021-12-14 22:42:03 · 739 阅读 · 0 评论 -
【Python】逆向爬虫-----模拟空中网登录(js混淆)
栗子是:战火互娱通行证一、拿到加密代码原创 2021-12-12 03:16:23 · 476 阅读 · 1 评论 -
【Python】逆向爬虫-----模拟试客联盟登录(RSA)
栗子是:登录 - 试客联盟一、拿到加密代码可以看到密码被加密了,我们在搜索框里搜索 “password ” ,找到并打开包含该关键词的js文件,查看里面的代码。我们找到了这段代码,这段代码里有"RSA"、"encrypted"这些单词,应该是与加密有关的。这段代码的大致意思我们可以读懂:4782行:serializeArray()这个js函数是用来实现序列化的,我们可以看到他作用于loginForm这个ID的标签,loginForm这个标签就是填写登录信息,也就是说formDa...原创 2021-12-11 17:19:54 · 1470 阅读 · 0 评论 -
【Python】逆向爬虫-----模拟steam登录(RSA)
栗子是:Sign In一、拿到加密代码由图可以看到password被加密了。我们在搜索框里搜索 “password =” 。我们在这行代码中找到了加密代码的语句,是一个RSA的加密。我们在这里设置一个断点。再次提交登录。我们复制这两行代码到js调试工具。把复制过来的代码放进一个函数里,接下来我们要补全函数 。我们回到检测工具定位到getPublicKey()这个函数。通过观察可知,这个js文件里面写的是NSA加密的内容,所以我们把文件里的全部代码...原创 2021-12-10 16:34:23 · 2177 阅读 · 0 评论 -
【Python】逆向爬虫-----模拟微信公众平台登录(MD5)
栗子是:微信公众平台的登录。由图可以看到password是被加密成一段32个字符的字符串,应该是一个MD5的加密。我们用搜索工具搜索一下pwd,查看它所在的js文件。在js文件里找到了一行可疑是进行加密的代码,因为我们看到它有个substr(0, 16)是用来截取16个字符的函数,我们在这里设置断点。这时我们再次点一下登录,发送请求。OK!我们应该没有猜错,执行函数前我们的pwd还没有被加密。我们在这个函数u里设置一个断点,然后点击“进入下一个函数调用...原创 2021-12-08 23:55:49 · 1916 阅读 · 2 评论 -
【Python】逆向爬虫-----常见的加密方法
一、MD5加密MD5加密是一种被广泛使用的线性散列算法,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整的一致性。且MD5加密之后产生的是一个固定长度(32位或16位)的数据。若要破解MD5加密,需要找到MD5加密的基础源码,然后进行逆向。二、DES/AES加密DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的算法。该加密算法是一种对称加密方式,其加密运算、解密运算需要使用的是同样的密钥(一组字符串)即可。原创 2021-12-07 21:24:17 · 3869 阅读 · 0 评论 -
【Python】爬虫-----selenium操作Ⅱ
一、截取页面图片selenium可以对页面进行截图并保存。web.save_screenshot("web1.png")如果要把截下来的图片剪切要怎么做呢,虽然它不是selenium的内容。处理图片我们需要PIL这个模块 pip installPillow 。然后确定图片对应的左上角和右下角的坐标。例如,在百度页面截取这个图片:1.获取图片xpath路径code_img_ele = web.find_element_by_xpath('//*[@id="s_lg_img..原创 2021-12-05 23:49:09 · 416 阅读 · 0 评论 -
【Python】爬虫-----处理cookieⅡ
一、了解cookiecookie:它是存储在客户端的一组键值对。在web中cookie的典型应用是免密登录。原创 2021-12-04 16:53:13 · 805 阅读 · 0 评论 -
【Python】爬虫-----多任务异步处理、异步http获取案例Ⅱ
import asyncioimport aiohttpimport requestsfrom lxml import etreeheaders = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Safari/537.36'}#异步获取正文链接源代码async def get_request(.原创 2021-12-04 12:52:54 · 412 阅读 · 0 评论 -
【Python】爬虫-----selenium入门操作Ⅰ
当我们查看一个页面的数据时,它返回的数据是加密后的效果,可以用selenium解决。二、selenium我们可以用selenium把程序与浏览器连接,让浏览器帮我们完成各种复杂的操作。使用selenium要安装,selenium模块和...原创 2021-11-28 14:03:43 · 951 阅读 · 1 评论 -
【Python】慢谈UnicodeEncodeError: ‘gbk‘ codec can‘t encode character ‘\xa0‘ in position 31 报错
最近在用python执行写入文件的程序时,出现了这个报错:意思是将Unicode字符编码转为GBK时候出现了问题,可能是本身Unicode类型的字符中,包含了一些无法转换为GBK编码的一些字符;所以我头脑中萌生出的第一种解决办法是把那些无法转换为GBK编码的字符给删了,转换不了的字符在报错中也说明了是’\xa0‘这个东西。于是我就修改了下代码。from lxml import etreeimport requestsurl = "https://www.qb5.tw/book_5158原创 2021-11-25 15:26:36 · 1415 阅读 · 1 评论 -
【Python】爬虫-----异步http请求下载图片
import asyncioimport aiohttpurls = [ "https://cdn.pixabay.com/photo/2021/11/16/08/13/window-6800397_960_720.jpg", "https://cdn.pixabay.com/photo/2021/01/29/11/33/game-5960731_960_720.jpg", "https://cdn.pixabay.com/photo/2021/11/13/12/19/co.原创 2021-11-24 22:22:23 · 806 阅读 · 0 评论 -
【Python】多任务异步协程
9一、简单说说异步协程当我们在程序中用time()函数时,往里面设置3秒的时间,程序就会等待3秒结束后继续执行下面的代码,在等待过程中程序处于终止状态不执行任何代码。但是我们调用了异步协程的time,程序在等待的过程中会执行其他代码,这就是异步协程的大概的概念。下面我用代码举个例子。二、代码举例import timet1 = time.time()def func1(): print("这是方法一") time.sleep(3) print("这是方法一")de原创 2021-11-24 14:27:57 · 2132 阅读 · 0 评论 -
【Python】多线程、多进程、线程池
一、多线程使用多线程需要导入threading模块里的Thread类。 创建多线程对象,赋予其需要执行的目标。 启动线程。#导入类from threading import Threaddef func(): for i in range(500): print("子线程:", i)if __name__ == '__main__': t = Thread(target=func)#创建线程类,目标为func方法 t.start()#开始线程原创 2021-11-23 12:40:57 · 605 阅读 · 0 评论 -
【Python】爬虫-----防盗链的处理
认识防盗链当你爬取一个链接时,它返回的内容与你在浏览器中浏览的内容不同时,你就知道被反爬了,于是你在代码里添加了User-Agent和Cookie,发现还是被反爬了,那怎么办呢?不着急,加上防盗链试试。防盗链用于查找溯源链接如果找不到溯源链接就返回“错误”的信息。防盗链很容易被找到,它是这个样子的。...原创 2021-11-20 20:11:24 · 2023 阅读 · 1 评论 -
【Python】爬虫-----处理cookie
用来处理例如登录之后才能操作的事情。由于没有找到适合的网站做这个案例,只好写一段代码,来演示一下大概的过程。import requestsurl = "输入url"session = requests.session()#1.登录获取cookiesdata = { "user[email]": "用户名", "user[password]":"密码"}#从F12里获取到的数据session.post(url,data=data)#2.登录好了之后session中有了c原创 2021-11-20 17:25:28 · 676 阅读 · 0 评论 -
【Python】爬虫-----数据解析之Xpath解析
前言:Xpath是在xml文档中搜索内容的一门语言,html是xml的子集。一、Xpath解析原创 2021-11-20 01:10:28 · 769 阅读 · 0 评论 -
【Python】爬虫-----数据解析之Bs4解析
前言:学习Bs4解析需要一定的html知识,学习过html的博友们不难上手Bs4解析。一、Bs4解析find(标签,attrs={属性:属性值}):找第一个。 find_all(标签,attrs={属性:属性值}):找全部。原创 2021-11-18 16:47:22 · 1563 阅读 · 0 评论 -
【Python】爬虫-----数据解析之re解析
前言:许多情况下,我们不需要整个网页的内容,只需要部分的数据,所以我们需要将提取到的数据解析。一、re解析RegularExpression-----正则表达式,是一种使用表达式的方式对字符串进行匹配的语法规则。优点是速度快、效率高、准确性高,缺点是新手上手难。1.正则表达式语法元字符:量词:控制前面元字符出现的次数。贪婪匹配和惰性匹配:2.正则表达式在python中的实现findall():查找所以,返回list。import relst = re.f..原创 2021-11-14 23:53:05 · 1782 阅读 · 0 评论 -
【Python】爬虫-----requests
一、伪装把爬虫程序伪装成用浏览器来访问地址。复制这一段"user-agent",伪装成浏览器的header。import requestsurl = "https://haokan.baidu.com/v?pd=wisenatural&vid=13010513670189503165"headers = { "User-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KH.原创 2021-11-13 13:07:30 · 953 阅读 · 0 评论 -
【Python】datatime模块常用方法
一、获取当前时间import datetimed = datetime.datetime.now()print(d)原创 2021-11-04 22:03:09 · 386 阅读 · 0 评论 -
【Python】Excel操作--panda、matplotlib、Jupyter Notebook
一、创建文件dd原创 2021-11-10 23:09:13 · 6884 阅读 · 1 评论 -
【Python】random随机数模块
原创 2021-11-02 13:08:25 · 133 阅读 · 0 评论 -
【Python】模块
一、导入模块的方式import模块名import mathprint(math.sqrt(9))from 模块名 import 功能1,功能2,功能3...from math import sqrtprint(sqrt(9))from 模块名 import *from math import *print(sqrt(9))二、as定义别名imort 模块名 as 别名 from 模块名 import 功能 as 别名#模块别名import time as tt.原创 2021-10-31 15:12:30 · 293 阅读 · 0 评论 -
【Python】类属性和类方法
一、设置和访问类属性定义class Dog(): tooth = 50 #定义公有类属性 __teeth = 40 #定义私有类属性wangcai = Dog()Dog.toothprint(wangcai.tooth)类属性有点:1.记录的某项数据始终保持一致时,则定义类属性。 2.实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占一份内存,更加节省内存空间。二、修改类属性cla...原创 2021-10-30 19:24:35 · 1517 阅读 · 0 评论 -
【Python】继承
一、继承的定义原创 2021-10-30 15:15:10 · 103 阅读 · 0 评论 -
【Python】类和对象
一、面向对象实现方法语法#定义类class 类名(): 代码 ......#创建对象对象名 = 类名()#调用类方法对象名.方法名()体验class object(): def function1(self): print('这是一个类。')obj = object()obj.function1()#这是一个类。二、添加和获取对象属性1、类外面添加对象属性语法:对象名.属性名 = 值haier.width = 500原创 2021-10-27 23:19:05 · 206 阅读 · 0 评论 -
【Python】文件操作
一、打开文件open():该函数可以打开一个存在的文件,或者创建一个文件。语法:open('name', 'mode')name:打开目标文件名的字符串或目标文件的路径。mode:设置文件的访问模式:只读、写入、追加等。模式:r 以只读方式打开文件(read)。文件的指针将会放在文件的开头。默认模式。 w 打开一个文件只用于写入(write)。如果该文件已存在则将其覆盖;若文件不存在,创建新文件。 a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文原创 2021-10-26 00:36:46 · 124 阅读 · 0 评论