def try_decode(encoded_str):
encodings = ['utf-8', 'gbk', 'shift_jis', 'big5', 'latin1']
for encoding in encodings:
try:
# 尝试解码
decoded_str = encoded_str.decode(encoding)
# print(f"成功使用编码 {encoding} 解码: {decoded_str}")
return decoded_str
except (UnicodeDecodeError, AttributeError):
import sys
from PySide2.QtCore import QSize, Qt, QRect, Signal
from PySide2.QtGui import QPainter, QIcon, QCursor
from PySide2.QtWidgets import QApplication, QLineEdit, QWidget
class SearchLineEdit(QLineEdit):
search_val = Signal(str)
def __init__(self, parent=None):
super(SearchLineEdit, self).__init__(parent)
self.setPlaceh
import sys
from PySide2.QtWidgets import QApplication, QMainWindow, QTabWidget, QWidget, QVBoxLayout, QLabel
class LazyLoadingTabWidget(QTabWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.tabBarClicked.connect(self.load_tab_content)
# 创建标签页
self.first_tab = QWidget()
self.first_tab.
URL encode加密
当URL中出现中文时,或者传递的参数含中文时,浏览器可以正常的显示中文,但是当你把它复制下来的时候便会发现是一串含有百分号的字符,这其实是正常的。
import urllib.parse
text = '我爱学习'
s = urllib.parse.quote(text)
print(s)
u = urllib.parse.unquote(s)
print(u)
上面的代码,使用urllib.parse.unquote()方法便可以将编码重新转换为中文
运行结果
# 创建多个复选框
self.checkbox1 = QCheckBox("选项 1", self)
self.checkbox2 = QCheckBox("选项 2", self)
# 连接每个复选框的stateChanged信号到槽函数
self.checkbox1.stateChanged.connect(self.onStateChanged)
self.checkbox2.stateChanged.connect(self.onStateChanged)
def onStateChanged(self, state):
# 获取发出信号的复选框
checkbox = self.sender()
# 检查复选框是否被选中
if state == Qt.C
方案一
# 窗口设置圆角
def paintEvent(self, event):
painter = QPainter(self)
painter.setRenderHint(QPainter.Antialiasing) # 抗锯齿
# 创建一个矩形,与窗口相同大小
rect = QRectF(self.rect())
# 定义圆角半径
radius = 10
# 创建一个带有圆角的路径
path = QPainterPath()
path.addRoundedRect(rect, radius, radius)
import base64
from io import BytesIO
from PIL import Image
def PIL_base64(img, coding='utf-8'):
"""
将PIL图像对象转换为base64编码字符串。
PIL_base64(Image.open('E:/照片/28.jpg'))
参数:
- img (PIL.Image): 要转换的PIL图像对象。
- coding (str): base64字符串的编码类型,默认为'utf-8'。
返回:
- str: 图像的base64编码字符串。
"""
# 确定图像格式
img_format = img.
标准算法
function md5(a) {
function b(a, b) {
return a << b | a >>> 32 - b
}
function c(a, b) {
var c, d, e, f, g;
return e = 2147483648 & a,
f = 2147483648 & b,
c = 1073741824 & a,
d = 1073741824 & b,
g = (1073741823 & a) + (10737418
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as Ec
# 配置浏览器
options = webdriver.ChromeOptions()
options.add_argument('--start-maximized') # 浏览器窗口最大化
options.add_argument("--disable-web-security"
1、安装
pip install playwright
2、安装驱动
安装所有驱动
playwright install
安装指定驱动
# Firefox
playwright install firefox
# Chromium
playwright install chromium
# WebKit
playwright install webkit
指定需要启动的浏览