相亲、相亲,广大年轻人的噩梦,那么我们就来采集一下相亲网站数据叭~

article/2025/10/8 9:13:39

前言 😋

大家早好、午好、晚好吖~

环境开发:

  • Python 3.8

  • Pycharm

模块使用:

  • requests

  • parsel

  • csv

代码实现步骤:

  1. 发送请求, 模拟浏览器对于url地址发送请求

  2. 获取数据, 获取服务器返回响应数据 ----> 对应 开发者工具里面 response

  3. 解析数据, 提取我们想要数据内容 基本信息

  4. 保存数据, 保存表格里面 / 图片可以保存到文件夹里面

代码

# 导入数据请求模块  ---> 第三方模块 需要cmd里面 pip install requests
import requests
# 导入数据解析模块  ---> 第三方模块 需要cmd里面 pip install parsel
import parsel
# 导入csv模块 ---> 内置模块 不需要安装
import csv

完整源码、解答、教程加Q裙:261823976 点击蓝字加入【python学习裙】

请添加图片描述

# 创建文件
f = open('对象_1.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['标题','幸运号','性别','年龄','星座','年薪','学历','身高','爱情宣言','照片','详情页',
])
# 写入表头
csv_writer.writeheader()# 网址 列表页面url
link = 'https://www.19lou.com/r/1/19lnsxq-3.html'
# 模拟浏览器headers
headers = {'Cookie': '_Z3nY0d4C_=37XgPK9h; _DM_SID_=abfbcfb2fade7d35ee39c33b5eef7e13; screen=2543; pm_count=%7B%7D; dayCount=%5B%5D; cuid=Hd93N5CDQEk5bODgyK4cOrzXujbQHL84; JSESSIONID=370A8DC7AD014A912504354C3491C5F5; f39big=ip53; f9big=u87; _DM_S_=dc952385e06e9ac73264931ecd4bd0bc; Hm_lvt_5185a335802fb72073721d2bb161cd94=1659515619,1659592454,1659611492; fr_adv=bbs_huatan_ck; fr_adv_last=merry_thread_pc; _dm_userinfo=%7B%22uid%22%3A0%2C%22stage%22%3A%22%22%2C%22city%22%3A%22%E6%B9%96%E5%8D%97%3A%E9%95%BF%E6%B2%99%22%2C%22ip%22%3A%22175.0.62.249%22%2C%22sex%22%3A%221%22%2C%22frontdomain%22%3A%22www.19lou.com%22%2C%22category%22%3A%22%E6%83%85%E6%84%9F%2C%E5%A9%9A%E5%BA%86%2C%E6%97%B6%E5%B0%9A%22%7D; _dm_tagnames=%5B%7B%22k%22%3A%2219%E6%A5%BC%E5%A5%B3%E7%94%9F%E7%9B%B8%E4%BA%B2%22%2C%22c%22%3A29%7D%2C%7B%22k%22%3A%22%E5%A5%B3%E7%94%9F%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A31%7D%2C%7B%22k%22%3A%22%E7%A1%95%E5%A3%AB%22%2C%22c%22%3A2%7D%2C%7B%22k%22%3A%22%E5%A4%A9%E7%A7%A4%E5%BA%A7%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%A5%B3%E7%94%9F%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A21%7D%2C%7B%22k%22%3A%22%E7%9B%B8%E4%BA%B2%E8%AE%BA%E5%9D%9B%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9D%AD%E5%B7%9E%E7%9B%B8%E4%BA%B2%E7%BD%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9D%AD%E5%B7%9E%E5%BE%81%E5%A9%9A%E7%BD%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%A4%A9%E8%9D%8E%E5%BA%A7%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%221986%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9C%AC%E7%A7%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%81%8B%E7%88%B1%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E7%A6%BB%E5%BC%82%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%81%8B%E7%88%B1%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A1%7D%5D; Hm_lpvt_5185a335802fb72073721d2bb161cd94=1659619705','Host': 'www.19lou.com','Referer': 'https://www.19lou.com/r/1/19lnsxq-4.html','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36',
}
# 发送请求
response_1 = requests.get(url=link, headers=headers)
# 获取数据 print(response_1.text)
# 解析数据
selector_1 = parsel.Selector(response_1.text)
# css提取内容
title_list = selector_1.css('.item-hd h3::text').getall()  # 获取标题
# 获取链接
href = selector_1.css('.item-bd .cont a::attr(href)').getall()
# for循环
for title, index in zip(title_list, href):# 把http替换成httpsurl = index.replace('http:', 'https:')"""1. 发送请求, 模拟浏览器对于url地址发送请求- python代码 如何模拟浏览器发送请求请求头 是字典数据类型, 我们构建完整键值对形式- 如何替换内容ctrl + R 会弹出框框 输入正则命令(.*?): (.*)'$1': '$2',- <Response [200]> 表示请求成功但是不代表你得到数据...- response = requests.get(url=url, headers=headers)response 自定义变量 自己定义变量requests.get() 调用requests模块里面get方法url=url 左边url是get函数里面形式参数 右边url是我们传递进去的参数"""# 确定请求url地址# url = 'https://www.19lou.com/forum-164-thread-83331619167048422-1-1.html'# 模拟浏览器发送请求 headers请求头headers = {'Cookie': '_Z3nY0d4C_=37XgPK9h; _DM_SID_=abfbcfb2fade7d35ee39c33b5eef7e13; screen=2543; pm_count=%7B%7D; dayCount=%5B%5D; cuid=Hd93N5CDQEk5bODgyK4cOrzXujbQHL84; JSESSIONID=370A8DC7AD014A912504354C3491C5F5; f39big=ip53; f9big=u87; _DM_S_=dc952385e06e9ac73264931ecd4bd0bc; Hm_lvt_5185a335802fb72073721d2bb161cd94=1659515619,1659592454,1659611492; fr_adv=bbs_huatan_ck; _dm_tagnames=%5B%7B%22k%22%3A%22%E5%A5%B3%E7%94%9F%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A30%7D%2C%7B%22k%22%3A%2219%E6%A5%BC%E5%A5%B3%E7%94%9F%E7%9B%B8%E4%BA%B2%22%2C%22c%22%3A27%7D%2C%7B%22k%22%3A%22%E7%A1%95%E5%A3%AB%22%2C%22c%22%3A2%7D%2C%7B%22k%22%3A%22%E5%A4%A9%E7%A7%A4%E5%BA%A7%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%A5%B3%E7%94%9F%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A21%7D%2C%7B%22k%22%3A%22%E7%9B%B8%E4%BA%B2%E8%AE%BA%E5%9D%9B%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9D%AD%E5%B7%9E%E7%9B%B8%E4%BA%B2%E7%BD%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9D%AD%E5%B7%9E%E5%BE%81%E5%A9%9A%E7%BD%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%A4%A9%E8%9D%8E%E5%BA%A7%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%221986%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%9C%AC%E7%A7%91%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%81%8B%E7%88%B1%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E7%A6%BB%E5%BC%82%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E6%81%8B%E7%88%B1%22%2C%22c%22%3A1%7D%2C%7B%22k%22%3A%22%E5%BE%81%E5%8F%8B%22%2C%22c%22%3A1%7D%5D; _dm_userinfo=%7B%22uid%22%3A0%2C%22stage%22%3A%22%22%2C%22city%22%3A%22%E6%B9%96%E5%8D%97%3A%E9%95%BF%E6%B2%99%22%2C%22ip%22%3A%22175.0.62.249%22%2C%22sex%22%3A%221%22%2C%22frontdomain%22%3A%22www.19lou.com%22%2C%22category%22%3A%22%E6%83%85%E6%84%9F%2C%E5%A9%9A%E5%BA%86%2C%E6%97%B6%E5%B0%9A%22%7D; Hm_lpvt_5185a335802fb72073721d2bb161cd94=1659615006; fr_adv_last=merry_thread_pc','Host': 'www.19lou.com','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36',}# 发送请求 --> <Response [200]> 表示请求成功# requests模块里面get请求方法对于url地址发送请求, 并且携带上headers请求头伪装, 最后用response自定变量接受返回数据response = requests.get(url=url, headers=headers)# 2. 获取数据, 获取服务器返回响应数据 ----> 对应 开发者工具里面 response print(response.text)"""3. 解析数据, 提取我们想要数据内容 基本信息bs4 lxml parsel.... 解析模块- 解析方法: 都要学习掌握, 没有最好的 ---> 只有最适合的re: 直接对于字符串数据进行提取css: 根据标签属性提取数据内容xpath: 根据标签节点提取数据内容今日选择css选择器:根据标签属性提取数据内容都需要进行类型转换: 转成可解析对象因为我们得到 response.text ---> 字符串数据类型pycharm翻译是需要安装插件 ---> 找落落老师去要css选择器解析方法教学, 在系统课程 2.5个小时"""

尾语 💝

好了,我的这篇文章写到这里就结束啦!

有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!

请添加图片描述


http://chatgpt.dhexx.cn/article/9h9tGEoc.shtml

相关文章

趣味整数-相亲数

问题描述 220的真因数之和为1245101120224455110284 284的真因数之和为12471142220 真因数是除了自身之外的约数 毕达拉哥斯把这样的数对A, B称为相亲数&#xff1b;A的真因数之和为B&#xff0c;B的真因数之和为A 。求100000以内的相亲数&#xff1b; public class Main {…

Java相亲数实现

2、相亲数b 【问题描述】 2500年前数学大师毕达哥拉斯就发现&#xff0c;220和284两数之间存在着奇妙的联系&#xff1a; 220的因数之和&#xff08;除了自身之外的因数&#xff09;为&#xff1a;1105544222011105421284&#xff0c;284的因数之和为&#xff1a;14271421220。…

相亲数amp;完全数最简单算法

今天看到博客园一位仁兄的相亲数&#xff0c;整体感觉不错。 原文出处&#xff1a;http://www.cnblogs.com/devil0153/archive/2010/08/22/AmicablePair-And-PerfectNumber.html 版权声明&#xff1a;版权归作者WeiSteven所有&#xff0c;转载请注明&#xff01; 但有些算…

计算10000以下所有相亲数之和。

d(n)定义为n 的所有真因子&#xff08;小于 n 且能整除 n 的整数&#xff09;之和。 如果 d(a) b 并且 d(b) a, 且 a b, 那么 a 和 b 就是一对相亲数&#xff08;amicable pair&#xff09;&#xff0c;并且 a 和 b 都叫做亲和数&#xff08;amicable number&#xff09;。 …

算法练习-相亲数

问题描述 220的真因数之和为1245101120224455110284 284的真因数之和为 12471142220 毕达拉哥斯把这样的数对A&#xff0c;B称为相亲数&#xff1a;A的真因数之和为B&#xff0c;而B的真因数之和为A。求100000以内的相亲数。 问题分析 这个问题的关键是求真因数之和&#…

判断相亲数(c语言)

问题&#xff1a;编写一个程序&#xff0c;输入两个正整数&#xff0c;判断它们是否是相亲数&#xff1b; 运行图: 源代码&#xff1a; #include <stdio.h> int sum(int x) {printf("%d,",x);int i,j,k,z0,p0,h0;int l[20];for(kx-1;k>1;k--){if(x%k0){zk…

相亲数完全数最简单算法

今天看到博客园一位仁兄的相亲数&#xff0c;整体感觉不错。 原文出处&#xff1a;http://www.cnblogs.com/devil0153/archive/2010/08/22/AmicablePair-And-PerfectNumber.html 版权声明&#xff1a;版权归作者WeiSteven所有&#xff0c;转载请注明&#xff01; 但有些算法感…

相亲数问题

相亲数&#xff08;Amicable Pair&#xff09;&#xff0c;又称亲和数、友爱数、友好数&#xff0c;指两个正整数中&#xff0c;彼此的全部约数之和&#xff08;本身除外&#xff09;与另一方相等。毕达哥拉斯曾说&#xff1a;“朋友是你灵魂的倩影&#xff0c;要像220与284一样…

亲和数、相亲数

转自&#xff1a;http://zh.wikipedia.org/wiki/%E7%9B%B8%E4%BA%B2%E6%95%B0 相亲数(Amicable Pair)&#xff0c;又称亲和数、友爱数&#xff0c;指两个正整数中&#xff0c;彼此的全部约数之和&#xff08;本身除外&#xff09;与另一方相等。 例如220与284&#xff1a;…

关于“相亲数”的算法实现

“相亲数”的介绍 在数学中&#xff0c;“相亲数”是指一对“你中有我&#xff0c;我中有你”的数字&#xff0c;其特点是&#xff1a; 彼此的全部约数和&#xff08;本身除外&#xff09;与另一方相等。 例如&#xff1a;220和284就是一对相亲数。 220的全部约数和&#xff…

C#调用Matlab BP神经网络预测数据

Matlab 实现BP网络进行打包(Matlab 版本为 R2022a vs 2019)&#xff1a; matlab 命令窗口输入&#xff1a;deploytool 然后选择 Library Compiler 打开如下窗口&#xff1a; 在Type 框选择 .NET Assembly 在 点加入 添加函数文件 需要修改Class Name 点击右键 选择 Re…

bp神经网络预测模型python,r语言bp神经网络预测

如何建立bp神经网络预测 模型 。 建立BP神经网络预测模型&#xff0c;可按下列步骤进行&#xff1a;1、提供原始数据2、训练数据预测数据提取及归一化3、BP网络训练4、BP网络预测5、结果分析现用一个实际的例子&#xff0c;来预测2015年和2016年某地区的人口数。 已知2009年…

BP神经网络预测(MATLAB自定义函数进行)

功能&#xff1a;7输入1输出 算法&#xff1a;BP神经网络&#xff08;MATLAB自定义函数&#xff09; 电话&#xff1a;13483417110 输入&#xff1a;入炉温度、第一加热段温度、第二加热段温度、均热段温度、第一加热段停留时间、第二加热段停留时间、均热段停留时间 输出&…

BP神经网络预测实现

基本概念 误差反向传播神经网络简称为BP(Back Propagation)网络&#xff0c;它是一种具有三层或三层以上的多层神经网络&#xff0c;每一层都由若干个神经元组成。如图所示为一个BP神经网络的结构图&#xff0c;它的左、右各层之间各个神经元实现全连接&#xff0c;即左层的每…

基于神经网络的房价预测,BP神经网络预测房价

1、如何利用matlab进行神经网络预测 matlab 带有神经网络工具箱&#xff0c;可直接调用&#xff0c;建议找本书看看&#xff0c;或者MATLAB论坛找例子。 核心调用语句如下&#xff1a; %数据输入 %选连样本输入输出数据归一化 [inputn,inputps]mapminmax(input_train); [outpu…

麻雀搜索算法优化BP神经网络预测以及MATLAB代码实现

麻雀搜索算法SSA优化BP神经网络回归预测以及MATLAB代码实现 文章目录 麻雀搜索算法SSA优化BP神经网络回归预测以及MATLAB代码实现1. 麻雀搜索算法SSA原理1.1 算法灵感来源1.2 算法模型描述 2. SSA优化BP神经网络预测算法流程3. SSA优化BP回归预测的MATLAB实现步骤4. 运行结果与…

bp神经网络预测模型优点,bp神经网络缺点及克服

BP神经网络的核心问题是什么?其优缺点有哪些? 人工神经网络,是一种旨在模仿人脑结构及其功能的信息处理系统,就是使用人工神经网络方法实现模式识别.可处理一些环境信息十分复杂,背景知识不清楚,推理规则不明确的问题,神经网络方法允许样品有较大的缺损和畸变.神经网络的类型…

提高bp神经网络预测精度,bp神经网络收敛速度慢

1、如何提高bp神经网络的预测精度啊 跟你的预测对象有很大关系。 1. 根据你的预测对象的特性选取合适的输入层、输出层和隐层神经元数目。 2. 选择合适的神经网络训练函数。 3. 保证足够的训练样本数据&#xff0c;并且确保这个训练样本数据有足够的精度能够反映需要预测的对象…

(四)BP神经网络预测(上)

BP神经网络适用于机器人控制、组合优化、模式识别、图像信息处理&#xff0c;能够对非线性数据建立精确的模型&#xff0c;对其未来进行预测。其核心思想是&#xff1a;将已预处理好的数据放到神经网络的微分方程进行反复训练&#xff0c;通过大量的训练建立BP神经预测模型&…

基于遗传算法优化BP神经网络预测和分类MATLAB实现-附代码

基于遗传算法GA优化的BP神经网络预测和分类&#xff08;含优化前对比&#xff09; 文章目录 基于遗传算法GA优化的BP神经网络预测和分类&#xff08;含优化前对比&#xff09;1. BP神经网络预测原理简介2. 遗传算法GA优化BP神经网络原理3. GA-BP模型建立3.1 模型与数据介绍3.2 …