playwright 最佳实践
安装首先,你需要在Python环境中安装Playwright。使用以下命令进行安装:
pip install playwright
安装完成后,你需要使用以下命令运行来下载所有所需的浏览器二进制文件:
playwright install
代码生成将代码保存my.py中,用户与登录信息保存到auth.json中:
playwright codegen --save-storage=auth.json -o my.py
代码示例12345678910111213141516171819202122from playwright import sync_playwrightwith sync_playwright() as p: #创建一个浏览器实例 browser = p.chromium.launch() #打开新的页面 page = browser.newPage() #访问网页 page.goto('https://www.example.com') #操控页面元素 form = page.querySel ...
playwright 入门
安装首先,你需要在Python环境中安装Playwright。使用以下命令进行安装:
pip install playwright
安装完成后,你需要使用以下命令运行来下载所有所需的浏览器二进制文件:
playwright install
代码生成将代码保存my.py中,用户与登录信息保存到auth.json中:
playwright codegen --save-storage=auth.json -o my.py
代码示例12345678910111213141516171819202122from playwright import sync_playwrightwith sync_playwright() as p: #创建一个浏览器实例 browser = p.chromium.launch() #打开新的页面 page = browser.newPage() #访问网页 page.goto('https://www.example.com') #操控页面元素 form = page.querySel ...
Nginx ALL IN ONE
Nginx 介绍
1. 反向代理关于代理
说到代理,首先我们要明确一个概念,所谓代理就是一个代表、一个渠道;
此时就设计到两个角色,一个是被代理角色,一个是目标角色,被代理角色通过这个代理访问目标角色完成一些任务的过程称为代理操作过程;如同生活中的专卖店~客人到adidas专卖店买了一双鞋,这个专卖店就是代理,被代理角色就是adidas厂家,目标角色就是用户
正向代理
说反向代理之前,我们先看看正向代理,正向代理也是大家最常接触的到的代理模式,我们会从两个方面来说关于正向代理的处理模式,分别从软件方面和生活方面来解释一下什么叫正向代理
在如今的网络环境下,我们如果由于技术需要要去访问国外的某些网站,此时你会发现位于国外的某网站我们通过浏览器是没有办法访问的,此时大家可能都会用一个操作FQ进行访问,FQ的方式主要是找到一个可以访问国外网站的代理服务器,我们将请求发送给代理服务器,代理服务器去访问国外的网站,然后将访问到的数据传递给我们!
上述这样的代理模式称为正向代理,正向代理最大的特点是客户端非常明确要访问的服务器地址;服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的 ...
Java Web ALL IN ONE
Java Web安全功能参数检验基于Hibernate Validator实现数据校验集成步骤:
添加依赖: 在你的项目中添加Hibernate Validator的依赖。你可以使用Maven或者Gradle进行依赖管理。
如果使用Maven,可以在pom.xml文件中添加如下依赖:
12345<dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artifactId> <version>6.1.6.Final</version></dependency>
配置Spring Boot: 如果你是在Spring Boot项目中使用Hibernate Validator,通常不需要任何显式的配置,因为Spring Boot已经默认集成了Hibernate Validator。
使用校验注解: 在需要校验的DTO类字段上使用Hibernate Va ...
Java并发编程 ALL IN ONE
介绍Java线程代码示例Java创建线程的4种方式123456789101112131415161718package org.example.thread.demo;/** * 线程创建方式:继承Thread */public class MyThread extends Thread{ @Override public void run() { System.out.println("MyThread 线程执行..."); } public static void main(String[] args) { MyThread thread =new MyThread(); thread.start(); System.out.println("主线程执行..."); }}
1234567891011121314151617181920package org.example.thread.dem ...
RabbitMQ ALL IN ONE
介绍RabbitMQ 的概念RabbitMQ 是一个消息中间件:它接受并转发消息。你可以把它当做一个快递站点,当你要发送一个包 裹时,你把你的包裹放到快递站,快递员最终会把你的快递送到收件人那里,按照这种逻辑 RabbitMQ 是 一个快递站,一个快递员帮你传递快件。RabbitMQ 与快递站的主要区别在于,它不处理快件而是接收, 存储和转发消息数据。
四大核心概念
生产者
产生数据发送消息的程序是生产者
交换机
交换机是 RabbitMQ 非常重要的一个部件,一方面它接收来自生产者的消息,另一方面它将消息 推送到队列中。交换机必须确切知道如何处理它接收到的消息,是将这些消息推送到特定队列还是推 送到多个队列,亦或者是把消息丢弃,这个得有交换机类型决定
队列
队列是 RabbitMQ 内部使用的一种数据结构,尽管消息流经 RabbitMQ 和应用程序,但它们只能存 储在队列中。队列仅受主机的内存和磁盘限制的约束,本质上是一个大的消息缓冲区。许多生产者可 以将消息发送到一个队列,许多消费者可以尝试从一个队列接收数据。这就是我们使用队列的方式
消费者
消费与接收具有 ...
IntelliJ IDEA ALL IN ONE
常用快捷键
查找 ctrl + F / ctrl + shift + F
替换 ctrl + R / ctrl + shift + F
删除无效引用 ctrl + alt + o
格式化代码 ctrl + alt + l
抽取方法 ctrl + alt + m
推送代码 ctrl + k
回到上个位置 ctrl + alt + <- / ctrl + alt + ->
格式化json数据(需安装GsonFormat) Alt+Insert
进入方法 ctrl + 鼠标左键 /ctrl + alt + 鼠标左键
方法补全 ctrl + ; /ctrl + alt+ ;
自动补全变量名和变量属性 CTRL+ALT+V
补全分号; CTRL + SHIFT +ENTER
Alt+F7 查看哪些类引用过该方法
Ctrl+H 查看类的继承关系
Ctrl+ALT+U 图方式显示类的继承关系
调试代码快捷键
F8 单步调试,不进入函数内部
F7 单步调试,进入函数内部
F9 继续执行,进入下一个断点或执行完程序
Shift+F7 选 ...
CentOS ALL IN ONE
常用操作修改系统默认编码为中文utf8
编辑系统配置文件
1vim /etc/sysconfig/i18n
把原配置中LANG=””引号里面的改成: zh_CN.UTF-8
保存退出。
修改CentOS运行环境的默认语言环境变量值
1vim /etc/profile
找到export LANG这行,在export前面写上
1LANG="zh_CN.UTF-8"
想修改其他编码,就把zh_CN.UTF-8改成对应的
修改系统时区查看服务器时间与本地时间是否一致,执行
1date
若服务器时间与本地时间不一致,执行以下命令修改,若两者一致则忽略
1tzselect
根据提示依次选择5、9、1、1,如图:
最后执行:
1ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
验证是否修改成功
常见问题与解决方案
/bin/bash^M: 坏的解释:没有那个文件或目录
在linux下编写shell脚本,赋予权限即可运行。如果是在window ...
Linux命令总结
常用命令123456789101112131415161718192021222324252627282930313233343536373839#网络连通性检测#查看主机是否可达 ping ipping 192.168.10.1#查看端口是否可达 telnet ip porttelnet 192.168.10.1 3306#关闭进程#查看信息包含java的进程ps -ef|grep java#关闭进程 根据进程号kill -9 xxx#查看端口是否占用netstat -tunlp | grep 8888#查找文件find / -name xxx.jar#文件传输 scp 源文件 账户@ip:文件路径scp jdk-8u161-linux-x64.tar.gz installjdk.sh root@114.115.219.250:/root/#使环境变量成效source /etc/profile#yum安装程序yum install xxx#以后台方式启动,输出日志 # example: nohup java -jar xx.jar > log.log 2>& ...
PicGo + gitee搭建免费图床
介绍 用picGo图床工具+gitee搭建属于自己的免费图床。 所谓图床工具,就是自动把本地图片转换成链接的一款工具,网络上有很多图床工具,就目前使用种类而言,PicGo 算得上一款比较优秀的图床工具。
它是一款用 Electron-vue 开发的软件,可以支持微博,七牛云,腾讯云COS,又拍云,GitHub,阿里云OSS,SM.MS,imgur 等8种常用图床,功能强大,简单易用。
准备工作下载picGo图床并安装,下载地址:https://github.com/Molunerfinn/PicGo
注意:windwos 选择 .exe系统,mac 系统选择 dmg 下载,如果不是下载安装包,想看源码的话,可以选择 git clone https://github.com/Molunerfinn/PicGo.git 克隆到本地。我这里下载windwos版的。
找到要下载的版本
下载完成正常点击下一步即可。
开始搭建1、创建一个仓库在右上角点击加号 —> 新建仓库
写上库的名字(随意)—> 是否开源选公开 —> 勾选上使用Readme文件初始化这个 ...