这篇教程Python爬取几千条相亲文案写得很实用,希望能帮到您。 前言: 前不久,我刷到这样一条短视频,“1.7亿的90后仅有约1000万对结婚,结婚率不到10%”,当然我们也无法查实当中数据的来源以及真实性,不过小编倒是总能听说身边的朋友在抱怨脱单难、找不到合适的对象。 今天我通过Python写了一个简单的脚本在抓取公开的相亲文案,看看在相亲的都是些什么样的人?他们的择偶标准又是什么样子的?什么样子的人更加容易脱单?
1.代码的编写过程
我们引入需要用到的库,这里用到Python 当中的requests 库来发送和接受请求,通过正则表达式re这个库来解析数据 import requestsfrom tenacity import *import reimport time 很多时候对遇到请求超时的情况,因此当出现一次错的时候,我们会多尝试几次,因此这里使用retry装饰器来多次尝试 @retry(stop=stop_after_attempt(5))def do_requests(url): response = requests.get(url, headers=headers, proxies=proxies, timeout=10) return response.text 我们抓取的数据包括出生年份、身高/体重、学历、收入、职业、自我介绍、择偶标准、车房情况等等,都是通过正则表达式re库来实现的, date_of_birth = re.compile("<br/>①出生年月/星座(.*?)<br/>", re.M | re.S)sex = re.compile("<br/>【基本资料】(.*?)<br/>")height = re.compile("<br/>②身高/体重(.*?)<br/>")education = re.compile("<br/>⑤学历(.*?)<br/>")jobs_1 = re.compile("<br/>⑥职业(.*?)<br/>")income = re.compile("<br/>⑦月均收入(.*?)<br/>")married = re.compile("<br/>⑨有无婚史(.*?)<br/>")house_cars = re.compile("<br/>⑧车房情况(.*?)<br/>")self_intro = re.compile("<br/> Python调用百度AI实现人像分割详解 python中not not x 与bool(x) 的区别 |