Tesla's Blog

There's a bug...

python的可变对象与不可变对象

Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典) Python3 的六个标准数据类型中: 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组); 可变数据(3 个):List(列表)、Dicti...

将字符串中的空格替换

在写爬虫的时候,有时候需要把返回的数据做处理。有一种情况是,返回的内容中有很多空格或者乱七八糟的不知名’空格’,所以需要把这些空格去掉或替换掉,试了多种办法,如下办法最好用。 https://stackoverflow.com/questions/8270092/remove-all-whitespace-in-a-string-in-python 1 2 3 a = ' 我 ...

将curl命令转为python脚本

在写爬虫的时候,有时候需要找到异步调用的请求。这个时候如果要快速地将请求转化为python脚本,可以复制curl命令,然后用如下网站直接转为python脚本 https://curl.trillworks.com/

使用pyinstaller将python脚本变为exe文件,并使用nssm将exe文件添加到windows服务

在帮朋友爬取完产品数据后,需要将产品图片用http的方式提供访问已便程序调用,前面博文中介绍说找到了一个python脚本,确实很方便。但是有一个不好的地方就是,因为我要一直提供http服务,所以启动这个脚本后那个控制台就一直在那里挂着,让我看着很不爽。万一被误关掉了呢?所以想到有没有什么办法可以以windows服务的方式在后台运行呢?想到了把python脚本的执行写在bat文件里面,然后把b...

BeautifulSoup提取有空格的class的标签中的内容

爬虫中很重要的一点就是对爬下来的内容进行提取。我的标题其实应该是取的有问题的,我在搜索这个问题的时候,看到stackoverflow上有回答说HTML class can’t contain spaces. This element has multiple classes. Searching by either of these classes works。但是为了方便理解,我就取这个名...

python过滤字符串

最近在爬产品数据的时候,为了做产品的唯一性确定,发现用产品的url链接不行,因为相同的产品可能存在于不同的url里面,后来发现产品的货号可以用来做唯一标示,避免了重复数据的入库。但是货号爬下来后,需要做一下处理,要不然可能货号或者一些符号也被包括在里面。需要把爬下来的货号的string进行过滤,只留下英文字母和数字 我还蛮喜欢filter函数的,里面加上lamada表达式,可以对字...

python判断字符串是否包含list中的元素

如下: 1 2 3 4 5 6 7 8 9 10 11 def containsAny(seq, aset): return True if any(i in seq for i in aset) else False a = '我爱卓依婷' list_b = ['爱', 'Timi'] list_c = ['不爱'] list_d = ['婷'] list_e = ['依婷'] p...

使用Tornado起一个静态文件服务

在帮朋友爬取了产品数据后,需要将图片展示到他们做的一个app上,所以需要起一个服务可以通过http的方式访问图片,Google以后找到了这个脚本,发现蛮好用的,速度也快。 原文链接:https://gist.github.com/jiffyclub/043a44b524859a3cf70b 脚本如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...

使用协程gevent提升爬虫速度

不采用gevent时: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 from requests_html import HTMLSession import time home_url = 'https://www.gucci.cn/zh/' session = HTMLSessi...

python获取for循环的下标

只获取list中的元素: 1 2 3 a = ['卓依婷', '伍佰', '张宇'] for i in a: print(i) 输出: 1 2 3 4 卓依婷 伍佰 张宇 [Finished in 0.3s] 同时获取list中的index和元素: 1 2 3 a = ['卓依婷', '伍佰', '张宇'] for index, i in enumerate(a): ...