![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spider_learning
Havertz_PPC
本科毕业于NENU,研究生就读于SUSTech,目前对数据分析、机器学习和人工智能等领域感兴趣。
展开
-
平安实习—爬取环保部近15年的生态环境质量公报(爬虫练习)
1、目的练习使用requests库和xpath2、代码# 0、导入所需要的包import requestsfrom lxml import etreeimport time# 1、定制请求头并获取网页信息headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safa原创 2021-01-08 10:46:30 · 415 阅读 · 0 评论 -
python验证码识别(OCR)-----tesseract库学习一
tesseract库学习一、安装过程踩的坑1、安装配制环境变量2、安装pytesseract相关链接[link](https://blog.csdn.net/lsf_007/article/details/87931823).3、使用pytesseract相关链接[link](https://blog.csdn.net/weixin_42670810/article/details/108942053).二、cmd操作1、cmd进入文件所在路径2、识别:tesseract+文件名+文件命名3、修改语言:te原创 2020-12-23 16:04:38 · 468 阅读 · 1 评论 -
异步多线程爬取表情包-01
综合案例# 导入相关的库import requestsfrom lxml import etreefrom urllib import requestimport osimport re# 页面解析def parse_page(url): headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0原创 2020-09-23 23:35:42 · 144 阅读 · 0 评论 -
python3多线程学习笔记(三)----(全局变量声明及锁机制)
# ----------------代码一-----------------------------'''import threadingvalue = 0def add_value(): # 函数内部引用全局变量,需要使用 global 关键字进行声明。 global value for i in range(100): value += 1 print("value的值是:%d" % value)def main(): for原创 2020-09-06 20:59:49 · 497 阅读 · 0 评论 -
python3多线程学习笔记(二)
使用Thread类创建多线程一、代码示例二、两者比较一、代码示例import threadingimport time# 定义一个类,使之继承threading.Thread 这个父类,并实例化后调用 start() 方法启动新线程,即它调用了线程的 run() 方法。class Coding(threading.Thread): def run(self): for i in range(3): # threading.current_thre原创 2020-09-03 23:51:02 · 97 阅读 · 0 评论 -
python3多线程学习笔记(一)
多线程学习一、什么是多线程二、为什么要使用多线程三、使用多线程实例四、总结比较一、什么是多线程进程可以简单的理解为一个可以独立运行的程序单位,它是线程的集合,进程就是有一个或多个线程构成的。而线程是进程中的实际运行单位,是操作系统进行运算调度的最小单位。 可理解为线程是进程中的一个最小运行单元。那么多线程就很容易理解:多线程就是指一个进程中同时有多个线程正在执行。二、为什么要使用多线程在一个程序中,有很多的操作是非常耗时的,如数据库读写操作,IO操作等,如果使用单线程,那么程序就必须等待这些操作执原创 2020-09-02 17:59:34 · 211 阅读 · 0 评论 -
python操作json数据
import json# 一、读取json数据# 1.1 方法一:使用loads()方法读取已有数据data = '{"姓名":"小黄","nianling":16,"aihao":"null"}'message = json.loads(data)print(message)# 1.2 方法二:使用load()方法读取文件数据(文件保存时必须位于同一行,不然直接load会报错)with open(r"C:\Users\江宏川\Desktop\data.json",'r',encoding原创 2020-08-21 11:34:11 · 158 阅读 · 0 评论 -
【爬虫实例】正则表达式爬取古诗词
目录一、序言二、代码三、总结反思一、序言学完正则表达式,今天做了一个实战项目,来爬取某个古诗词网站的诗词信息。二、代码# 00 导入所需的包import requestsimport re# 03 页面解析def parse_page(url): # 3.1 构造请求头 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gec原创 2020-08-10 18:00:34 · 427 阅读 · 0 评论 -
正则表达式学习---匹配单个字符
目录1、序言2、代码3、反思1、序言正则表达式作为一种常用的数据定位筛选的方法,功能十分强大。2、代码import re----------查找单个字符-------------text = "nihao小明15546390988a@qq.com"1、'字符串名称' 匹配某个字符串response = re.match("ni",text)print(response.group())2、'.' 匹配任意字符(除了换行符)response = re.match(".",text)原创 2020-08-07 14:34:50 · 549 阅读 · 0 评论 -
【实战-02】爬取成都某设计院的招聘信息-02
目录1、序言2、代码3、总结反思1、序言昨天写了第一版代码,爬取了该网站的招聘主页面信息,今天写了第二版代码,来爬取其内嵌的子页面信息。2、代码# 0 导入所需的包import requestsfrom lxml import etree# 1、构造请求url = "https://cdadri.cheng95.cn/position/search?channel=0"headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0;原创 2020-08-05 10:37:56 · 156 阅读 · 0 评论 -
【实战-02】爬取成都某设计院的招聘信息-01
目录1、序言2、代码3、小结1、序言最近学习了很多爬虫的知识,想要通过这个爬取成都某设计院招聘信息的实例,对所学知识进行巩固。下面代码主要实现的功能是爬取该网站第一页的招聘信息。2、代码# 0 导入所需的包import requestsfrom lxml import etree# 1、构造请求url = "https://cdadri.cheng95.cn/position/search?channel=0"headers = { "User-Agent": "Mozilla/原创 2020-08-04 10:34:53 · 261 阅读 · 0 评论 -
爬取豆瓣热映电影信息(爬虫实例)
目录1、序言2、代码3、数据效果4、学习反思1、序言在学习完requests网络请求方法和xpath数据解析方法之后,今天通过一个实例来对前面所学的知识进行巩固,也算是一种学以致用吧!2、代码# 0、导入所需要的包import requestsfrom lxml import etree# 1、信息的获取headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML,原创 2020-08-03 11:03:06 · 855 阅读 · 0 评论 -
用xpath定位日文歌《lemon》的歌词
使用方式:1、使用“//”获取整个页面中的元素,然后写标签名,然后再写位词进行提取,比如://div[@class = 'abc']2、需要注意的知识点(1)“/”和“//”的区别,/代表获取整个页面当中的元素,//代表获取子孙节点,一般“//”用得比较多;(2)contains:有时候某个属性中包含了多个值,那么可以使用“contains”函数,示例代码如下,//div[contains(@class,'abc')];(3)、谓语词中的下标是从1开始,不是从0开始的。3、使用实例(用x原创 2020-07-31 18:25:40 · 295 阅读 · 1 评论 -
Request处理cookie信息
# 1、导入requests包import requests# 2、设置url和登录信息url = "http://www.renren.com/PLogin.do"data = { "email":" ", "password":" "}# 3、构造请求头headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36\ (KHT原创 2020-07-30 15:53:56 · 257 阅读 · 0 评论 -
requests中设置代理ip
# 1、引入requests包import requests# 2、设置代理ipproxy = { 'https':'202.95.8.141:3128'}# 3、对目标网站发起请求response = requests.get("http://httpbin.org/ip",proxies=proxy)# 4、打印查看print(response.text)原创 2020-07-30 15:28:11 · 4163 阅读 · 0 评论 -
Requests 库的基本使用
Requests 库的基本使用使用get方法发送请求 ( 若网页为post请求,则将get改为post即可 )1、导入requests包import requests#有时候还需要传递data参数例如:data = {“first”: “true”,“pn”: 1,“kd”: “python”}2、构造请求头headers = { "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KH原创 2020-07-30 11:49:43 · 176 阅读 · 0 评论