Python
python
IoneFine
这个作者很懒,什么都没留下…
展开
-
SALAlchemy 删除操作
SALAlchemy批量删除数据、全量删除问题:sqlalchemy如何批量删除多条数据解决:使用参数synchronize_session=False,或for循环方法:users = self.db.query(User).filter(User.id.in_(1,2,3)).all()[self.db.delete(u) for u in users]self.db.commit...原创 2019-04-16 13:51:50 · 261 阅读 · 0 评论 -
SQLAlchemy查询
几种常见sqlalchemy查询简单查询:print(session.query(User).all())print(session.query(User.name, User.fullname).all()) print(session.query(User, User.name).all()) 带条件查询:print(session.query(User).f...原创 2019-04-16 13:13:09 · 3170 阅读 · 0 评论 -
SQLAlchemy 事务回滚
1、通过create_engine()方法进行数据库连接,返回一个db对象后,可以直接使用engine的execute执行sql的方式,这叫connectionless执行;也可以借助engine.connect()获取conn,然后通过conn执行sql,叫做connection执行;主要差别在于是否使用transaction模式,如果不涉及transaction模式,两种方法效果是一样的,网网...原创 2019-04-15 22:14:26 · 6730 阅读 · 0 评论 -
SQLAlchemy 排序
1、order_by(类名.字段名) 默认按照字段值的升序排序results = session.query(User).order_by(User.create_time.desc()).all()2、desc() 是降序 asc()是升序3、逗号隔开,代表第一个相同的话,就按第二个排序参考:SQLALchemy之ORM操作 https://www.cnblogs.com/E...原创 2019-04-15 20:03:21 · 1122 阅读 · 0 评论 -
SQLAlchemy一对多、多对一关系。。。更新中
一对多关系class Parent(Base): # 一 __tablename__ = 'parent' id = Column(Integer, primary_key=True) name = Column(String(64), nullable=False) full_name = Column(String(64)) children = r...原创 2019-04-01 15:09:16 · 325 阅读 · 0 评论 -
SQLAlchemy更新操作的优雅方式
在介绍SQLAlchemy更新操作之前,先来思考一下下面的问题:class Test(object): def __init__(self): self.a = "" self.b = ""if __name__ == "__main__": obj1 = Test() obj2 = Test() obj2.a = "xixi...原创 2019-03-23 22:51:09 · 20677 阅读 · 3 评论 -
通过download middleware随机更换user-agent,fake-useragent的使用
官方文档:Downloader Middleware https://docs.scrapy.org/en/latest/topics/downloader-middleware.html通过download middleware随机更换user-agentUser Agent1中文名为用户代理,简称UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU类型、浏览器...原创 2019-03-17 16:17:30 · 607 阅读 · 0 评论 -
PyInstaller程序打包
Python GUI程序打包原创 2020-01-17 16:53:08 · 995 阅读 · 1 评论 -
Python Requests库介绍
Python Requests库介绍原创 2019-02-18 01:07:08 · 1441 阅读 · 0 评论 -
scrapy中Item Loader机制
scrapy item loader机制直接赋值取值的方式,会出现一下几个问题代码量一多,各种css和xpath选择器,充斥整个代码逻辑,没有规则,可读性差、不利于维护对于一个字段的预处理,不明确,也不应该出现在主逻辑中这时通过scrapy中的ItemLoader模块来处理。ItemLoader对象它是一个对象,它返回一个新项加载器到填充给定项目。它有以下类:class scra...原创 2019-05-21 13:42:10 · 1240 阅读 · 1 评论 -
scrapy爬取知乎
1、新建> scrapy startproject spider_pjt2_zhihu> cd spider_pjt2_zhihu> scrapy genspider zhihu www.zhihu.com原创 2019-03-09 10:59:59 · 467 阅读 · 0 评论 -
Scrapy框架--Requests对象
详解:https://www.cnblogs.com/thunderLL/p/6551641.html参考:Scrapy框架–Requests对象 https://www.cnblogs.com/thunderLL/p/6551641.html原创 2019-03-07 00:01:48 · 214 阅读 · 0 评论 -
Python抽象基类、鸭子类型介绍
鸭子类型、Python抽象基类介绍原创 2019-03-29 18:29:54 · 670 阅读 · 0 评论 -
Django ORM与Scrapy集成
django orm与scrapy集成:https://github.com/scrapy-plugins/scrapy-djangoitem原创 2019-02-10 00:04:51 · 1421 阅读 · 2 评论 -
scrapy之crawls的暂停与重启
Jobs: pausing and resuming crawls1Sometimes, for big sites, it’s desirable to pause crawls and be able to resume them later.Scrapy supports this functionality out of the box by providing the followi...原创 2019-03-08 10:39:00 · 933 阅读 · 0 评论 -
Redis的简介
NoSQL的概述什么是NoSQLNoSQL = Not Only SQL 非关系型数据库为什么需要NoSQLHigh performance 高并发读写Huge Storage 海量数据的高效率存储和访问High Scalability && High Availability 高可扩展性和高可用性主流NoSQL产品NoSQL数据库的四大分类键值(Ke.原创 2019-03-03 22:23:45 · 164 阅读 · 0 评论 -
Python3.x的内置类属性
> python --versionPython 3.7.1In [1]: class People(object): ...: pass ...:In [2]: dir(People)Out[2]:['__class__', # 实例所在的类 '__delattr__', # 删除name属性 '__dict__', # 实例自定义属性 ...原创 2019-02-27 12:38:31 · 1340 阅读 · 0 评论 -
Python3.x一些重要的内置函数
一些重要的内置函数函数描述abs(number)返回数字的绝对值all(iterable)如果iterable的所有元素都为真值, 就返回True; 否则返回Falseany(iterable)如果iterable的所有元素都为假值, 就返回False; 否则返回Trueascii(object)类似于repr, 但对非ASCII字符进行转义b...原创 2019-02-27 10:17:19 · 275 阅读 · 0 评论 -
HTTP代理池实现
话不多说,代码呈上:#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2019/2/26 13:02# @Author : One Fine__author__ = "One Fine"# @Site : # @File : crawl_xici_ip.py# @Software: PyCharmim...原创 2019-02-27 01:02:35 · 1037 阅读 · 0 评论 -
Scrapy Middleware用法简介
一、Downloader Middleware 的用法Downloader Middleware即下载中间件,它是处于Scrapy的Request和Response之间的处理模块。Scheduler从队列中拿出一个Request发送给Downloader执行下载,这个过程会经过Downloader Middleware的处理。另外,当Downloader将Request下载完成得到Respo...原创 2019-03-07 09:28:51 · 2938 阅读 · 1 评论 -
CentOS 7 安装Python3的配置
接着:Python3.7源码包编译安装 https://blog.csdn.net/jiduochou963/article/details/86694775一、python部分切换(修改默认链接):$ cd /usr/bin/$ mv python python.back$ mv python-config python-config.back确认一下:[root@local...原创 2019-03-24 23:11:36 · 387 阅读 · 0 评论 -
Python第三方ORM库:SQLAlchemy简介
Python ORM之SQLAlchemy原创 2019-03-18 14:02:36 · 1104 阅读 · 0 评论 -
Python之eval的使用
eval的使用eval()函数十分强大,将字符串 当成 有效的表达式 来求值 并 返回计算结果。举个栗子>ipythonPython 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)]Type 'copyright', 'credits' or 'license' for more...原创 2019-01-13 20:31:47 · 2361 阅读 · 0 评论 -
Python第三方模块PYCURL使用
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。PYCURL官网: http://pycurl.io/官方文档: http://pycurl.io/docs/latest/index.htmlpycurl是功能强大的python的url库...原创 2019-04-20 16:09:22 · 1593 阅读 · 0 评论 -
Python装饰器
python装饰器说说Python的装饰器模式与面向切面编程 https://blog.csdn.net/hello_katty/article/details/46591463python爬虫常见异常及处理方法 https://blog.csdn.net/woyaojinqu/article/details/78161487...原创 2019-04-22 11:23:42 · 177 阅读 · 0 评论 -
python中的轻量级定时任务调度库:schedule简单使用
schedule官网: https://schedule.readthedocs.io/en/stable/安装:$ pip install schedule简单使用:import datetimeimport scheduleimport threadingimport time def job1(): print("I'm working for job1") ...原创 2019-04-16 11:50:05 · 868 阅读 · 0 评论 -
Python多进程
Python实现多进程的方式主要有两种,一种方式是使用os模块中的fork方法,另一种方法是使用multiprocessing模块。这两种方法的区别在于前者仅适用于Unix/Linux操作系统,对Windows不支持,后者则是跨平台的实现方式。由于现在很多爬虫程序都是运行在Unix/Linux操作系统上,所以两种方式都需要了解一下。使用os模块中的fork方式实现多进程Python的os模块封...原创 2019-04-08 09:27:55 · 529 阅读 · 0 评论 -
Python PIP的使用
pip使用在pyhton/scripts文件下,pip.exe 、pipx.exe是存在的,在CMD命令行下,pip --version 无法参看版本号,这是因为没有配置环境变量的原因。将pip.exe所在的目录配置到环境变量就OK了。使用pip安装python包:pip install SomePackage # latest versionpipinstall SomePac...原创 2019-04-06 16:50:23 · 107 阅读 · 0 评论 -
Python3.7源码包编译安装
七步搞定Python源码包安装原创 2019-01-29 20:04:05 · 18505 阅读 · 7 评论 -
字体反爬解析和处理——Python
在爬取网站抓取数据的过程中,有时会遇到这样一种情况:网页浏览正常,开发者模式(F12)查看原来没之后发现关键数据乱码,当然爬取下来的结果也是乱码。这种反爬策略一般称之为字体反爬。以58同城为例:用浏览器随便打开58同城的一个页面,F12调出开发者调试窗口:网页显示正常,调试窗口出现的内容与页面显示不符。回到网页上,右键查看网页源代码,搜索base64关键字,可以看到一大串用base64加...原创 2019-03-30 21:38:19 · 1471 阅读 · 1 评论 -
Python sys.path的使用
sys.path是python的搜索模块的路径集,是一个list,如下:In [1]: import sysIn [2]: sys.pathOut[2]:['C:\\Users\\xxx\\AppData\\Local\\Programs\\Python\\Python37\\Scripts\\ipython.exe', 'c:\\users\\xxx\\appdata\\local\...原创 2019-03-13 15:52:21 · 6009 阅读 · 0 评论 -
Selenium登录知乎
解决selenium + chromedriver被知乎反爬的问题1当使用selenium去某宝或其他网站进行爬虫或者模拟登陆时,会出现滑动验证码,并且无论是用ActionChains滑还是手动滑,都会很委婉的告诉你“哎呀网络错误,请刷新”等等。why?经过科学上网,查阅众多资料,发现seleniumyou 有一些特征值, 例如下面:window.navigator.webdriverw...原创 2019-03-05 19:50:11 · 961 阅读 · 0 评论 -
Django模板
模板在之前的章节中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面。目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2。 DTL 是 Django Template Language 三个单词的缩写,也就是Django自带的模板语言。当然也可以配置Django支持Jinja2等其他模...原创 2019-02-14 15:33:59 · 480 阅读 · 2 评论 -
Python多线程编程实践
理论: https://blog.csdn.net/jiduochou963/article/details/88020415GIL, global interpreter lock (cpython)python中的一个线程对应于c语言中的一个线程GIL使得同一个时刻只有一个线程在一个CPU上执行字节码,无法将多个线程映射到多个CPU上执行,即无法体现多核CPU的优势import dis...原创 2019-02-28 23:52:35 · 266 阅读 · 0 评论 -
Django入门
Django入门创建项目及应用创建项目创建应用创建第一个页面(响应)第一个Template重新配置URLTemplates什么是TemplatesHTML文件使用了Django模板引擎(Django Template Language, DTL)使用第三方模板(如Jinja2)DTL初步使用render()函数中支持一个dict类型的参数该字典是后台传递到...原创 2019-01-22 19:46:13 · 235 阅读 · 0 评论 -
Python爬虫基础
无论是过去的“搜索引擎”,还是时下热门的“数据分析”,爬虫都是获取数据必不可少的手段,数据时代,不管你是什么技术方向,爬虫都是你应该掌握的技能。原创 2019-01-26 16:37:11 · 200 阅读 · 1 评论 -
Python网络编程
Socket是什么Socket是 计算机 网络中进程间数据流的端点Socket是操作系统的通信机制应用程序通过Socket进行网络数据的传输简单TCP过程客户端服务器端发送SYN报文,设置序号XSYN = 1 Seq = XACK = 0设置SYN+ACK报文,设置序号YSYN = 1 Seq = YACK = X+1发送ACK报文,设置序号XSeq = X + 1 ACK =Y+...原创 2019-01-15 22:31:46 · 205 阅读 · 0 评论 -
Python模块制作与发布
Python模块制作与发布如果希望自己开发的模块,分享 给其他人,可以按照以下步骤操作目录结构:.|-- hello| |-- __init__.py| |-- request.py| `-- response.py`-- setup.pyrequest.py文件def hello(): print("请求调用我")response.py文件...原创 2019-01-14 21:20:04 · 1319 阅读 · 3 评论 -
Regular Expression:Python遇见正则表达式
Python正则表达式原创 2019-01-29 20:27:00 · 953 阅读 · 0 评论 -
virtualenv、virtualenvwrapper——Python虚拟环境安装
Python虚拟环境的安装原创 2019-01-18 22:46:03 · 1691 阅读 · 0 评论