好兄弟单身?这不得用python来帮他脱离苦海

这篇具有很好参考价值的文章主要介绍了好兄弟单身?这不得用python来帮他脱离苦海。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

明天什么节日 ?明天谁过节 ?

是你吗,还是你的朋友 ?如果是你的话,那咱就帮帮朋友,到年龄的咱就直接相亲呗

好兄弟单身?这不得用python来帮他脱离苦海

赠人玫瑰 手留余香

好人做到底,来让朋友体验体验恋爱的感觉~

好兄弟单身?这不得用python来帮他脱离苦海

今天就带你们来爬爬相亲网站的数据信息

如果明天你不过节,那你也可以自己筛选筛选,这种好事,自己怎么能错过!

好兄弟单身?这不得用python来帮他脱离苦海

前期准备

环境开发

  • Python 3.8
  • Pycharm

模块使用

  • requests —> 数据请求模块 需要安装 pip install requests

  • parsel

  • csv

基本流程思路

一. 数据来源分析:

  1. 分析我们想要数据内容在哪里?
    请求那个网站, 可以得到相应的数据
  2. 抓包分析, 我们想要数据内容 在哪里
    通过开发者工具抓包分析… 会用 1 不会用 2

F12 或者 鼠标右键点击检查 选择 network <网络>
通过关键字搜索 可以找寻相关数据包 —> 查看 headers
二. 代码实现步骤:

  1. 发送请求, 模拟浏览器对于url地址发送请求
  2. 获取数据, 获取服务器返回响应数据 ----> 对应 开发者工具里面 response
  3. 解析数据, 提取我们想要数据内容 基本信息
  4. 保存数据, 保存表格里面 / 图片可以保存到文件夹里面

采集所有对象数据信息 —> 做一些简单可视化图表 —> 可以实现颜值检测 分析那个对象最好看

为什么实现颜值检测,为什么要分析

因为先看脸哈哈,有眼缘才有后续!!

实现代码

完整源码/疑问解答👉点击文末名片

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

# 创建文件
f = open('对象_1.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
    '标题',
    '幸运号',
    '性别',
    '年龄',
    '星座',
    '年薪',
    '学历',
    '身高',
    '爱情宣言',
    '照片',
    '详情页',
])
# 写入表头
csv_writer.writeheader()

# 网址 列表页面url
link = 'https://www.**平台不让发 需要的+wx:xiaoyuanllsll'
# 模拟浏览器headers
headers = {
    'Cookie': '_',
    '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替换成https
    url = 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.**平台不让发 需要的+wx:xiaoyuanllsll'
    # 模拟浏览器发送请求 headers请求头
    headers = {
        'Cookie': '',
        '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 ---> 字符串数据类型
 """
    # 转换数据类型 <Selector xpath=None data='<html>\n<head>\n    <meta charset="gb23...'>
    selector = parsel.Selector(response.text)
    # 使用css提取数据  不会 2  会的 1   ---> 会复制么  ctrl + c ctrl + v
    # replace() 字符串替换
    love_num = selector.css('.love-blind-female .love-blind-info p::text').get()
    if love_num:
        love_num = love_num.replace('爱情幸运号:', '')
        # split() 字符串分割
        info_list = selector.css('.love-blind-female .love-blind-info .mt10::text').get().split(',')
        # 列表索引位置取值
        sex = info_list[0]  # 性别
        age = info_list[1]  # 性别
        constellation = info_list[2]  # 星座
        money = info_list[3]  # 年薪
        edu = info_list[4]  # 学历
        height = info_list[5]  # 身高
        love_txt = selector.css('.love-blind-female .love-blind-info .love-blind-txt::text').get()
        img_url = selector.css('.view-cont .thread-cont img::attr(src)').get().replace('http:', 'https:')
        # ctrl + D
        dit = {
            '标题': title,
            '幸运号': love_num,
            '性别': sex,
            '年龄': age,
            '星座': constellation,
            '年薪': money,
            '学历': edu,
            '身高': height,
            '爱情宣言': love_txt,
            '照片': img_url,
            '详情页': url,
        }
        csv_writer.writerow(dit)
        print(img_url)
        # 获取图片数据
        img_content = requests.get(url=img_url).content
        with open('img\\' + title + '.jpg', mode='wb') as f:
            f.write(img_content)
        print(dit)

最后

文章分享到这里就结束了

如果还有什么不懂的可以留言或者私信,也可以点击文末名片哦

帮自己还是帮兄弟就看你自己了!

好兄弟单身?这不得用python来帮他脱离苦海文章来源地址https://www.toymoban.com/news/detail-451265.html

到了这里,关于好兄弟单身?这不得用python来帮他脱离苦海的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python:查找兄弟单词

    定义一个单词的“兄弟单词”为:交换该单词字母顺序,而不添加、删除、修改原有的字母就能生成的单词。 兄弟单词要求和原来的单词不同。例如:ab和ba是兄弟单词。ab和ab则不是兄弟单词。 现在给定你n个单词,另外再给你一个单词str,让你寻找str的兄弟单词里,字典序

    2023年04月08日
    浏览(22)
  • 进阶高级Python开发工程师,不得不掌握的Python高并发编程

    🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+         Python成为时下技术革新的弄潮儿,全民Python的发展趋势让人们不再满足于简单地

    2024年02月17日
    浏览(36)
  • 防御性编程?这不就来了

    最近程序员界又重新流行起来了防御性编程这个概念,早期嘞,这个概念代表是一种细致、谨慎的编程方法。 防御性编程的目的是为了开发可靠的软件,我们在设计系统中每个组件的时候,都需要使其尽可能的 \\\"保护\\\" 自己。 但是 2023 年以来,国内的互联网市场是什么行情,

    2024年02月04日
    浏览(27)
  • 进阶高级Python开发工程师,不得不掌握的Python高并发编程(文末送书5本)

    🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+         Python成为时下技术革新的弄潮儿,全民Python的发展趋势让人们不再满足于简单地

    2024年02月17日
    浏览(36)
  • 【大虾送书第三期】进阶高级Python开发工程师,不得不掌握的Python高并发编程

    目录 ✨写在前面 ✨主要内容 ✨本书特色 ✨关于作者      🦐博客主页:大虾好吃吗的博客      🦐专栏地址:免费送书活动专栏地址 Python成为时下技术革新的弄潮儿,全民Python的发展趋势让人们不再满足于简单地运行Python程序,逐步探索其更为广泛的日常应用和高性能

    2024年02月17日
    浏览(36)
  • CTF —— 网络安全大赛(这不比王者好玩吗?)

    前言 随着大数据、人工智能的发展,人们步入了新的时代,逐渐走上科技的巅峰。 ⚔科技是一把双刃剑,网络安全不容忽视,人们的隐私在大数据面前暴露无遗,账户被盗、资金损失、网络诈骗、隐私泄露,种种迹象表明,随着互联网的发展,网络安全需要引起人们的重视

    2024年02月07日
    浏览(34)
  • Python3,为了无损压缩gif动图,我不得不写了一个压缩神器,真香。

    小屌丝 :鱼哥, 求助~ 求助~ 求助~ 小鱼 :你这是告诉我,重要的事情 说三遍吗? 小屌丝 :你可以这么理解。 小鱼 :好吧… 什么事情,这么慌慌张张。 小屌丝 :我的动图太大了, 无法上传到 C站。 小鱼 :呦呵… 你也开始写博文了? 小屌丝 :向鱼哥看齐。 小鱼 :没毛

    2024年02月06日
    浏览(34)
  • [oeasy]python0133_[趣味拓展]颜文字_流石兄弟_表情文字_2ch_kaomoji

    上次我们了解unicode 里面有各种字体 甚至还有 emoji emoji 本质上也是文字 按照unicode的方式编码 存储时按照utf-8的方式编码 显示时按照系统定义的方式进行显示 还有什么好玩的亚文化吗?🤔 emoticon 1982 年 9 月 19 日 诞生了第一个公开记录的表情符号 😃 由卡内基梅隆大学的斯

    2023年04月14日
    浏览(28)
  • 单身狗问题(初级)兼(升级版)

    所属专栏:经典算法题❤️ 🚀 博主首页:初阳785❤️ 🚀 代码托管:chuyang785❤️ 🚀 感谢大家的支持,您的点赞和关注是对我最大的支持!!!❤️ 🚀 博主也会更加的努力,创作出更优质的博文!!❤️ 🚀 关注我,关注我,关注我,重要的事情说三遍!!!!!!!!

    2024年02月16日
    浏览(36)
  • 你是真的“C”——找单身狗~

        😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主! 😘博主小留言:哈喽! 😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不

    2023年04月17日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包