python:中英文时间格式的转换
将时间字符串格式化,但是有出现英文月份,英文星期。
python,也可以这样特殊的日期转换成日期对象。
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景采集的网站,时间格式包含英文月份,需要转换成数字月份然后入库。
代码代码举例:
1234import datetimetime_str='Friday, November 18, 2016'time_format=datetime.datetime.strptime(time_str,'%A, %B %d, %Y')print(time_format)
运行结果
总结英文日期格式化,也是数据清洗的常见应用。
scrapy+pyppeteer.errors.BrowserError Browser closed unexpectedly 的解决办法
scrapy+报错pyppeteer.errors.BrowserError: Browser closed unexpectedly:解决办法
运行环境 Runtime environment123456操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1框架: Scrapy v2.4.1----gerapy-pyppeteer 0.0.13
症状在centos服务器上部署scrapty+gerapy-pyppeteer,运行
12pyppeteer.errors.BrowserError: Browser closed unexpectedly:[ERROR] Running as root without --no-sandbox is not supported. See https://crbug.com/638180
问题原因于是我去扒拉的一下gerapy-pyppeteer封装的代码
12345678910111213141516171819202122232425262728293031 ...
python:导入上级目录中的模块
python导入同级别模块很方便:
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景公司开发的爬虫项目日益庞大,光是启动爬虫的启动文件,都有几十个了。
于是,我打算把我负责的爬虫启动程序收束到一个目录当中,做整理。
但是,路径变更了以后,导致启动程序在服务器运行时,发生了错误。
主程序与模块程序在同一目录下目录结构
123-- spider |-- demo_1.py |-- main.py
main.py 中导入 mod1.py,则:
import demo_1
from demo_1 import *
主程序所在目录是模块所在目录的父(或祖辈)目录目录结构
12345-- spider |-- demo_1.py |-- demo_2 | |-- demo_2_1.py |-- main.py
main.py 中导入 demo_2中的demo_2_1.py,则:
需要在demo_2文件夹中 ...
python:将一个列表切分成多个小列表
python-将一个列表切分成多个小列表,多组数据扁平的保存在一个列表了,要怎么拆分。
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景数据采集,有时会采集到类似这样场景的数据结构。
1list_info = ['name zhangsan','age 10','sex man','name lisi','age 11','sex women']
可以观察到列表中每三个元素为一条数据,按理说一条应该被封装起来,变成这种格式
1list_info = [['name zhangsan','age 10','sex man'],['name lisi','age 11','sex women']]
是把 有规律的 ...
xpath语法:不包含某属性(or与and)的用法
页面解析时,碰到同级li标签,进行部分采集筛选时用到了or和contains方法的结合。
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
html 示例123456789101112131415<li>test</li><li id="demo">test</li><li id="demo" class="pharos_list">test</li><li class="pharos_list">test</li><li class="pharos_list">test</li><li class="pharos_list">test</li><li class="pharos ...
xpath_定位中@dom、starts-with、contains和text()、last()的对比
xpath_定位中@dom、starts-with、contains和text()、last()的对比.
运行环境 Runtime environment12操作系统: Windos10 IDE: pycharm 2021.3.1 x64
背景xpath 解析很强大,函数方法也很多,但是常用的也就那几个。
xpath_定位中@dom、starts-with、contains和text()、last()的对比。
常用位置定位和描述测试用html
12<input id="demo" class="bg s_btn btnhover" value="Raxianch" type="submit"/><a href="http://www.baidu.com">百度搜索</a>
@dom dom属性定位@符号加上dom属性名称组成定位,例如:@id、@name、@href等等..高亮部分为被定位的HTML节点
//input[@id=’de ...
git常用方法_撤销最后一次提交
Git可以使用reset重置来撤销提交。
运行环境 Runtime environment12操作系统: Windos10 IDE: pycharm 2021.3.1 x64
背景手滑,不小心把idea给add到git里面去了。
忽略文件都没来得及写。
所以,Git可以使用reset重置来撤销提交。
这难吗? 不难。 容易忘吗? 这种情况不多见,但是用到时候又要查一下。
干脆,写文章自己记一下。
方法一撤销最近的一次提交。()
git reset HEAD~1
方法二使用–soft,执行后,状态重置为上一次提交,但撤回提交的文件add到git,被git跟踪。(即撤回comit,但不撤回add)
git reset –soft HEAD~1
参数–mixed意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作这个为默认参数,git reset –mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
–soft不删除工作空间改动代码,撤销commit,不撤销git add .
–hard删除工作空间改动代码,撤销co ...
xpath_normalize-space函数的两种用法
normalize-space()的功能是去掉前后的空格。xpath函数normalize-space的两种用法,第一种方法非常实用,第二种方法就比较少用了。
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景使用xpath作为采集解析库是非常方便的。
有时就会采集到一些空格下来,甚至出现’\xa0’,这些空格的符号。
在Python里进一步进行清理处理,很容易,
但是能一步到位的话,也可以省些事情。
作用描述normalize-space()的功能是去掉前后的空格。
方法一normalize-space用在属性上,如
//div[normalize-space(@class)=’’]/text()
方法二normalize-space用结果上,如
normalize-space(//div[normalize-space(@class)=’’]/text())
注意text()方法可以获取父节点下所有的文本字符串,
但是如果加上normal ...
Pycharm 设置模板默认添加作者时间等信息
Pycharm过程中,每次新建都需要手动的编写一些项目信息或者文件信息个人信息,如果使用模板的话,很高效很多.
总之就是为了方便的添加信息。
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景Pycharm过程中,每次新建都需要手动的编写一些项目信息或者文件信息个人信息,如果使用模板的话,很高效很多.
总之就是为了方便的添加信息。
设置步骤
打开Pycharm,选择 File > Settings(Ctrl + Alt + S)
使用搜索快速找到”File and Code Templates”
右侧菜单选择”Python Script”,对模板进行编辑,并按OK保存生效
常用变量:
1234567${USER} 当前系统用户${DATE} 当前系统日期${TIME} 当前系统时间${PRODUCT_NAME} 创建文件的IDE名称
...
统计Python的list列表中元素的重复次数
python的列表去重挺方便的,但是想获取列表中的元素是否重复,以及想知道重复了几次要如何做呢?
运行环境 Runtime environment123操作系统: Windos10 IDE: pycharm 2021.3.1 x64 语言: python v3.9.1
背景某日,检查数据库表,想看看数据跟需求文档是否一致,导出的时候发现,数据条数比需求文档多了几个。
那就说明同一个用于检索的关键词有可能采集到了多条结果。
多条结果用了同一个检索词,那我就想知道,每个检索词分别有多少条数据。
基于该应用场景,有了这样的需求。
code 代码12345# 需要使用collections模块from collections import Countera = ['a', 'b', 'b', 'b', 'c', 'c']test = {key: value for key, value in dict(Counter(a)).items() if val ...