
Python
yFwillh
一二三十五六七
展开
-
selenium 通过加载stealth.min.js,过检测
selenium过自动化检测原创 2022-10-26 11:05:40 · 1377 阅读 · 0 评论 -
在docker中部署python项目是logging日志问题
在 Docker 容器里跑 Python 程序时,我们经常遇到通过print函数或者logging模块输出的信息在容器 log 中迷之失踪,过了好久又迷之出现。这是因为 Python 在写 stdout 和 stderr 的时候有缓冲区,导致输出无法实时更新进容器 log。有如下几种方法解决:1. 增加环境变量对于使用print函数打印的内容,在运行容器时增加环境变量PYTHONUNBUFFERED=0就可以解决。2. 配置 logging 的 stream 参数imp...转载 2021-07-30 15:09:03 · 1936 阅读 · 0 评论 -
Flask 应用中发布定时任务 - APScheduler
前言:由于项目需要,要添加一个定期清除已下载文件的功能,初期想到的是循环监听,定期删除,但这样会有一个很大的弊端,线程阻塞。于是便去查找框架,找到了APScheduler Python最强定时任务框架(非阻塞的异步框架)。注意:本文不作详细教程,仅记录实际使用过程,内容全部来自官方文档文档地址[Flask应用推荐查看第二篇]:https://apscheduler.readthedocs.io/en/stable/faq.htmlhttps://viniciuschiele.github..原创 2021-07-26 10:26:05 · 587 阅读 · 0 评论 -
Python selenium chrome 规避网站人机检测 + 指定配置文件运行
前言:当使用selenium+chromedriver进行用户模拟登陆的时候,服务器会检测出为非人工操作,从而不让访问。处理办法:from selenium import webdriverfrom selenium.webdriver import ChromeOptions# 配置浏览器参数,规避人机检测option = ChromeOptions()option.add_experimental_option('excludeSwitches', ['enable-automati原创 2021-06-23 10:55:51 · 6098 阅读 · 1 评论 -
Chrome无头模式 python+selenium+Chrome无头,ChromeHeadless
Python+selenium+Chrome headless前言:使用selenium执行网络爬虫程序时,考虑执行效率和某些其他原因,不希望爬虫工作时显式显示页面。通过网上查询资料,该需求可以使用PhantomJS浏览器实现,也可以使用Chrome 浏览器的headless Browser模式实现。由于现在好像selenium不在支持PhantomJS了,所以主要采用Chrome Headless模式实现。 什么是Headless模式 Headless Browser模式是浏览器...转载 2021-06-23 10:51:56 · 3939 阅读 · 2 评论 -
Python垃圾回收机制
Python的垃圾回收机制到底是什么回事?从网上找到一大堆的文档,看的也是一知半解,最终就学会了一句话:引用计数器为主、分代码回收和标记清除为辅。就这么一知半解的去忽悠面试官了,面试官如果恰好也只会这几句话,那便达成和解了。本篇文章从C语言源码底层来聊聊Python内存管理和垃圾回收机制到底是个啥?让你能够真正了解内存管理&垃圾回收。1. 白话垃圾回收用通俗的语言解释内存管理和垃圾回收的过程,搞懂这一部分就可以去面试、去装逼了…1.1 大管家refchain在Python的C转载 2020-12-09 15:41:55 · 305 阅读 · 0 评论 -
Ubuntu16.04 配置Python多版本共存
Ubuntu16.04 配置Python多版本共存软件环境:虚拟机:Vmware workstation15Linux系统:Ubuntu16.04前言:Ubuntu系统本身已经安装好了Python解释器,2.x版本和3.x版本都已安装 但是没有安装pip工具包,所以本教程要解决的问题就是为Python2和Python3分别安装pip工具包 安装完成后,为不同解释器安装包时带上相应版本数字后缀即可 例1:为Python2解释器安装numpy包 命令:pip2 install.原创 2020-12-03 14:34:47 · 532 阅读 · 0 评论 -
Django ORM查询
Django ORM基础查询基础的增删改查# ---增---# 方法一: register_time可以直接传时间格式的字符串,也可以传时间日期对象models.User.objects.create(name='kwen',age=18,register_time='2020-11-10')# 方法二:import datetimectime = datetime.datetime.now()user_obj = models.User(name='kwen',age=18,r原创 2020-11-20 10:10:03 · 187 阅读 · 0 评论 -
Python 代码风格指南
Python 代码风格指南介绍本文档所提供的编码规范,适用于主要的Python发行版中组成标准库的Python代码。请参阅PEP关于Python的C实现的C编码风格指南的描述。本文档和PEP257(文档字符串规范)改编自Guido的《Python Style Guide》一文,并从《Barry's style guide》添加了部分内容作为补充。这篇风格指南随着时间的推移而逐渐演变,随着语言本身的变化,一些过去的约定已经过时,并确定了更多新的约定。许多项目都有自己的编码风格指南。如.翻译 2020-08-17 17:12:07 · 620 阅读 · 0 评论 -
Ubuntu 16.04 下部署Flask项目
系统:Ubuntu 16.04 数据库:Mysql 8.0 Web框架:Flask 服务器:nginx WSGI 服务器:gunicorn绿色独角兽 Python3(一)安装Mysql数据库下载官方提供的 mysql-apt-config.deb 包配置文件进行APT源设置,下载地址:https://dev.mysql.com/downloads/repo/apt/安装mysql:sudo dpkg -i mysql-apt-config_0.8.14-1_all.de..原创 2020-06-19 22:48:48 · 443 阅读 · 0 评论 -
UserAgent大全 Python【转】
# -*-coding:utf-8 -*- import random # 返回一个随机的请求头 headersdef getheaders(): # 各种PC端 user_agent_list_2 = [ # Opera "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (K...转载 2019-08-26 16:40:51 · 293 阅读 · 0 评论 -
flask 重定向到上一个页面(获取当前url的前一个url)
flask 重定向到上一个页面(获取当前url的前一个url)作用:传入当前页面url,重定向到前一个url代码:from urllib.parse import urlparse, urljoin# 函数功能,传入当前url 跳转回当前url的前一个urldef redirect_back(backurl, **kwargs): for target in requ...转载 2019-06-11 19:45:00 · 4328 阅读 · 0 评论 -
Python3 使用flask_sqlalchemy 报错ModuleNotFoundError: No module named 'MySQLdb'
Python3 使用flask_sqlalchemy 报错ModuleNotFoundError: No module named 'MySQLdb'原因:python3 连接数据库驱动是 pymysqlpython2 连接数据驱动可以用 pymysql、MySQLdbsqlalchemy 默认使用 MySQLdb 连接数据库所以报错!解决办法:import...原创 2019-05-21 17:27:22 · 5935 阅读 · 0 评论 -
Flask-sqlalchemy 基本使用
Flask-SQLAlchemy库让flask更方便的使用SQLALchemy,是一个强大的关系形数据库框架,既可以使用orm方式操作数据库,也可以使用原始的SQL命令.Flask-Migrate 是一个数据迁移框架,需要通过Flask-script库来操作.一.配置Flask-SQLAlchemy程序使用的数据库地址需要配置在SQLALCHEMY_DATABASE_URI中,S...转载 2019-05-21 17:02:59 · 417 阅读 · 0 评论 -
Python 唤起QQ对话框 QQ客服效果
项目内新建文件,后缀改为 .bat如图:1、编辑文件添加一下内容:start "C:\Program Files\Google\Chrome\Application\chrome.exe" tencent://message/?uin=你的QQ号码&Site=有事Q我&Menu=yes/2、保存3、新建demo.py文件,编辑添加一下...原创 2019-02-26 13:10:47 · 1636 阅读 · 0 评论 -
Python 中 super
1.简单的使用在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如:在上面,Animal 是父类,Dog 是子类,我们在 Dog 类重定义了 greet 方法,为了能同时实现父类的功能,我们又调用了父类的方法,看下面的使用:super 的一个最常见用法可以说是在...转载 2019-01-15 21:33:08 · 110 阅读 · 0 评论