- 业务场景: 1、爬虫数据直接入库会出现id自增过大的问题。要么就入库之前做一次查询,确保数据不存在再插入,这样一来就速度就减慢了。而且,爬虫程序运行速度往往较快,查询操作过多对数据库造成压力也不小。 2、一个表的数据分别来自不同地方,需要多个程序对其进行数据补全操作,这样一来,就会出现数据缺失现象。如果直接入业务库会出现数据不全,虽然不是bug,但是影响体验 为了... 业务场景: 1、爬虫数据直接入库会出现id自增过大的问题。要么就入库之前做一次查询,确保数据不存在再插入,这样一来就速度就减慢了。而且,爬虫程序运行速度往往较快,查询操作过多对数据库造成压力也不小。 2、一个表的数据分别来自不同地方,需要多个程序对其进行数据补全操作,这样一来,就会出现数据缺失现象。如果直接入业务库会出现数据不全,虽然不是bug,但是影响体验 为了...
- 日志级别(5个等级),从低到高分别是: DEBUGINFOWARNINGERRORCRITICAL 日志输出: 控制台日志文件日志 logging 中的几个概念: Logger:日志记录器,是应用程序中可以直接使用的接口。Handler:日志处理器,用以表明将日志保存到什么地方以及保存多久。Formatter:格式化,用以配置日志的输出格式。 上述三者的关系... 日志级别(5个等级),从低到高分别是: DEBUGINFOWARNINGERRORCRITICAL 日志输出: 控制台日志文件日志 logging 中的几个概念: Logger:日志记录器,是应用程序中可以直接使用的接口。Handler:日志处理器,用以表明将日志保存到什么地方以及保存多久。Formatter:格式化,用以配置日志的输出格式。 上述三者的关系...
- chrome浏览器请求头中有许多参数,分别代表的意思如下 参数示例含义AcceptAccept: */*客户端能够接收的内容类型Accept-EncodingAccept-Encoding: gzip, deflate客户端支持的压缩编码类型Accept-LanguageAccept-Language: zh-CN,zh;q=0.9,en;q=0.8浏览器可接受的语言... chrome浏览器请求头中有许多参数,分别代表的意思如下 参数示例含义AcceptAccept: */*客户端能够接收的内容类型Accept-EncodingAccept-Encoding: gzip, deflate客户端支持的压缩编码类型Accept-LanguageAccept-Language: zh-CN,zh;q=0.9,en;q=0.8浏览器可接受的语言...
- orm英文全称object relational mapping,对象映射关系 http://www.sqlalchemy.org/ 常用操作 """ MySQL-Python mysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname> pymy... orm英文全称object relational mapping,对象映射关系 http://www.sqlalchemy.org/ 常用操作 """ MySQL-Python mysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname> pymy...
- fnmatch提供了一种类似 Unix shell-style 风格的文件名匹配方式 匹配模式 * 匹配任何字符 ? 匹配一个字符 [seq] 匹配在集合seq 中的任意字符 [!seq] 匹配不在集合seq 中的任意字符 1234 代码示例 import fnmatch filenames = [ "China.txt", "Japan.txt", "Am... fnmatch提供了一种类似 Unix shell-style 风格的文件名匹配方式 匹配模式 * 匹配任何字符 ? 匹配一个字符 [seq] 匹配在集合seq 中的任意字符 [!seq] 匹配不在集合seq 中的任意字符 1234 代码示例 import fnmatch filenames = [ "China.txt", "Japan.txt", "Am...
- # my_module.py # 被用于调用测试 def hello(): print("hello")123456 解释器内部使用的方法 my_module1 = __import__("my_module") my_module1.hello() # hello1234 官方建议使用方式 import importlib module2 = im... # my_module.py # 被用于调用测试 def hello(): print("hello")123456 解释器内部使用的方法 my_module1 = __import__("my_module") my_module1.hello() # hello1234 官方建议使用方式 import importlib module2 = im...
- 依赖库: pip install scrapy-splash1 配置settings.py # splash服务器地址 SPLASH_URL = 'http://localhost:8050' # 支持cache_args(可选) SPIDER_MIDDLEWARES = { 'scrapy_splash.SplashDeduplicateArgsMiddlew... 依赖库: pip install scrapy-splash1 配置settings.py # splash服务器地址 SPLASH_URL = 'http://localhost:8050' # 支持cache_args(可选) SPIDER_MIDDLEWARES = { 'scrapy_splash.SplashDeduplicateArgsMiddlew...
- csv文件 读取保存操作 官方文档:https://docs.python.org/3/library/csv.html 写入 # -*- encoding: utf-8 -*- import csv from io import StringIO from urllib import urlopen # 按行元组参数写入 def writerCsv1(): ... csv文件 读取保存操作 官方文档:https://docs.python.org/3/library/csv.html 写入 # -*- encoding: utf-8 -*- import csv from io import StringIO from urllib import urlopen # 按行元组参数写入 def writerCsv1(): ...
- fuzzywuzzy使用编辑距离(Levenshtein Distance)来计算序列之间的差异 github: https://github.com/seatgeek/fuzzywuzzy 安装 pip install fuzzywuzzy 1 代码示例 from fuzzywuzzy import fuzz text1 = "北京绿色公交占比年底将达93... fuzzywuzzy使用编辑距离(Levenshtein Distance)来计算序列之间的差异 github: https://github.com/seatgeek/fuzzywuzzy 安装 pip install fuzzywuzzy 1 代码示例 from fuzzywuzzy import fuzz text1 = "北京绿色公交占比年底将达93...
- 列表生成器 # 列表生成式 lst = [] for i in range(10): lst.append(i * 2) print(lst) # [0, 2, 4, 6, 8, 10, 12, 14, 16, 18] # 相当于: lst = [i * 2 for i in range(10)] print(lst) # [0, 2, 4, 6, 8, 10, 1... 列表生成器 # 列表生成式 lst = [] for i in range(10): lst.append(i * 2) print(lst) # [0, 2, 4, 6, 8, 10, 12, 14, 16, 18] # 相当于: lst = [i * 2 for i in range(10)] print(lst) # [0, 2, 4, 6, 8, 10, 1...
- 文件准备 $ mkdir tmp $ cd tmp $ touch file1.txt $ touch file2.txt $ touch file3.log $ ls file1.txt file2.txt file3.log 1234567 测试 import glob # 使用零个或多个字符通配符 * glob.glob("tmp/*.txt") O... 文件准备 $ mkdir tmp $ cd tmp $ touch file1.txt $ touch file2.txt $ touch file3.log $ ls file1.txt file2.txt file3.log 1234567 测试 import glob # 使用零个或多个字符通配符 * glob.glob("tmp/*.txt") O...
- 参考了很多,总结下 Python脚本执行的方式 当模块导入直接运行(__name__ == "main") $ python 运行当前目录下py文件$ python -m 将已安装库中的模块当脚本运行 主要区别在于: 查找文件的路径不一样一个运行的是脚本,一个是模块当脚本运行 参考: PYTHON 和PYTHON-M 的区别 参考了很多,总结下 Python脚本执行的方式 当模块导入直接运行(__name__ == "main") $ python 运行当前目录下py文件$ python -m 将已安装库中的模块当脚本运行 主要区别在于: 查找文件的路径不一样一个运行的是脚本,一个是模块当脚本运行 参考: PYTHON 和PYTHON-M 的区别
- 测试过程比较啰嗦,可以直接看文章底部的结论 测试环境 python 2.7.5 读写的文本 # -*- coding: utf-8 -*- poetry = """ 相思 唐代:王维 红豆生南国,春来发几枝。 愿君多采撷,此物最相思。 """ 12345678 1、直接读写中文(正常) # -*- coding: utf-8 -*- # 写入(正常) f ... 测试过程比较啰嗦,可以直接看文章底部的结论 测试环境 python 2.7.5 读写的文本 # -*- coding: utf-8 -*- poetry = """ 相思 唐代:王维 红豆生南国,春来发几枝。 愿君多采撷,此物最相思。 """ 12345678 1、直接读写中文(正常) # -*- coding: utf-8 -*- # 写入(正常) f ...
- vars 是内建函数,返回一个字典对象 不带参数,等价于 locals(). 带参数,等价于 object.__dict__. 12 class A(object): def __init__(self): self.a = 1 self.b = 2 def keys(self): for key in vars(self).keys(): yield key d... vars 是内建函数,返回一个字典对象 不带参数,等价于 locals(). 带参数,等价于 object.__dict__. 12 class A(object): def __init__(self): self.a = 1 self.b = 2 def keys(self): for key in vars(self).keys(): yield key d...
- 先看两段代码 Python 2.7.5 # -*- coding: utf-8 -*- # 旧式类 class Foo(): pass foo = Foo() print(foo.__class__) print(type(foo)) # __main__.Foo # <type 'instance'> # obj.__class__就表示该类,但... 先看两段代码 Python 2.7.5 # -*- coding: utf-8 -*- # 旧式类 class Foo(): pass foo = Foo() print(foo.__class__) print(type(foo)) # __main__.Foo # <type 'instance'> # obj.__class__就表示该类,但...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签