最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

單身狗福利?Python爬取某婚戀網(wǎng)征婚數(shù)據(jù)

 更新時(shí)間:2021年06月03日 17:02:38   作者:武亮宇  
今天我就當(dāng)回媒婆,給男性程序員來點(diǎn)福利.今天目標(biāo)爬取征婚網(wǎng)上呈現(xiàn)出來的女生信息保存成excel表格供大家篩選心儀的女生,需要的朋友可以參考下

目標(biāo)網(wǎng)址https://www.csflhjw.com/zhenghun/34.html?page=1

一、打開界面

在這里插入圖片描述

鼠標(biāo)右鍵打開檢查,方框里為你一個(gè)文小姐的征婚信息。。由此判斷出為同步加載

在這里插入圖片描述

點(diǎn)擊elements,定位圖片地址,方框里為該女士的url地址及圖片地址

在這里插入圖片描述

可以看出該女士的url地址不全,之后在代碼中要進(jìn)行url的拼接,看一下翻頁的url地址有什么變化

點(diǎn)擊第2頁
https://www.csflhjw.com/zhenghun/34.html?page=2

點(diǎn)擊第3頁
https://www.csflhjw.com/zhenghun/34.html?page=3

可以看出變化在最后
做一下fou循環(huán)格式化輸出一下。。一共10頁

在這里插入圖片描述

二、代碼解析

1.獲取所有的女士的url,xpath的路徑就不詳細(xì)說了。。

在這里插入圖片描述

2.構(gòu)造每一位女士的url地址

在這里插入圖片描述

3.然后點(diǎn)開一位女士的url地址,用同樣的方法,確定也為同步加載

在這里插入圖片描述

4.之后就是女士url地址html的xpath提取,每個(gè)都打印一下,把不要的過濾一下

在這里插入圖片描述
在這里插入圖片描述

5.最后就是文件的保存

在這里插入圖片描述

打印結(jié)果:

在這里插入圖片描述
在這里插入圖片描述

三、完整代碼

# !/usr/bin/nev python
# -*-coding:utf8-*-

import requests, os, csv
from pprint import pprint
from lxml import etree

def main():
    for i in range(1, 11):
        start_url = 'https://www.csflhjw.com/zhenghun/34.html?page={}'.format(i)

        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) '
                          'Chrome/87.0.4280.88 Safari/537.36'

        }
        response = requests.get(start_url, headers=headers).content.decode()
        # # pprint(response)
        # 3 解析數(shù)據(jù)
        html_str = etree.HTML(response)
        info_urls = html_str.xpath(r'//div[@class="e"]/div[@class="e-img"]/a/@href')
        # pprint(info_urls)

        # 4、循環(huán)遍歷 構(gòu)造img_info_url
        for info_url in info_urls:
            info_url = r'https://www.csflhjw.com' + info_url
            # print(info_url)
            # 5、對(duì)info_url發(fā)請(qǐng)求,解析得到img_urls
            response = requests.get(info_url, headers=headers).content.decode()
            html_str = etree.HTML(response)
            # pprint(html_str)
            img_url = 'https://www.csflhjw.com/' + html_str.xpath(r'/html/body/div[4]/div/div[1]/div[2]/div[1]/div['
                                                                r'1]/img/@src')[0]
            # pprint(img_url)
            name = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/h2/text()')[0]
            # pprint(name)
            xueli = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[1]/text()')[0].split(':')[1]
            # pprint(xueli)
            job = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[2]/text()')[0].split(':')[1]
            # pprint(job)
            marital_status = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[3]/text()')[0].split(
                ':')[1]
            # pprint(marital_status)
            is_child = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[4]/text()')[0].split(':')[1]
            # pprint(is_child)
            home = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[5]/text()')[0].split(':')[1]
            # pprint(home)
            workplace = html_str.xpath(r'//div[@class="team-info"]/div[@class="team-e"]/p[6]/text()')[0].split(':')[1]
            # pprint(workplace)
            requ = html_str.xpath(r'/html/body/div[4]/div/div[1]/div[2]/div[2]/div[2]/p[2]/span/text()')[0].split(':')[1]
            # pprint(requ)
            requ = [requ if requ != str() else '無要求'][0]
            monologue = html_str.xpath(r'//div[@class="hunyin-1-3"]/p/text()')
            # pprint(monologue)
            monologue = [monologue[0].replace(' ', '').replace('\xa0', '') if monologue !=list() else '無'][0]
            # pprint(monologue)
            zeo_age = html_str.xpath(r'/html/body/div[4]/div/div[1]/div[2]/div[2]/div[2]/p[1]/span[1]/text()')[0].split(':')[1]
            zeo_age = [zeo_age if zeo_age!=str() else '無要求'][0]
            # pprint(zeo_age)
            zeo_address = html_str.xpath(r'/html/body/div[4]/div/div[1]/div[2]/div[2]/div[2]/p[1]/span[2]/text()')[0].split(':')[1]
            zeo_address = [zeo_address if zeo_address!=str() else '無要求'][0]
            # pprint(zeo_address)

            if not os.path.exists(r'./{}'.format('妹子信息數(shù)據(jù)')):
                os.mkdir(r'./{}'.format('妹子信息數(shù)據(jù)'))
                csv_header = ['姓名', '學(xué)歷', '職業(yè)', '婚姻狀況', '有無子女', '是否購房', '工作地點(diǎn)', '擇偶年齡', '擇偶城市', '擇偶要求', '個(gè)人獨(dú)白', '照片鏈接']
                with open(r'./{}/{}.csv'.format('妹子信息數(shù)據(jù)', '妹子數(shù)據(jù)'), 'w', newline='', encoding='gbk') as file_csv:
                    csv_writer_header = csv.DictWriter(file_csv, csv_header)
                    csv_writer_header.writeheader()

            try:
                with open(r'./{}/{}.csv'.format('妹子信息數(shù)據(jù)', '妹子數(shù)據(jù)'), 'a+', newline='',
                          encoding='gbk') as file_csv:
                    csv_writer = csv.writer(file_csv, delimiter=',')
                    csv_writer.writerow([name, xueli, job, marital_status, is_child, home, workplace, zeo_age,
                                         zeo_address, requ, monologue, img_url])
                    print(r'***妹子信息數(shù)據(jù):{}'.format(name))
            except Exception as e:
                with open(r'./{}/{}.csv'.format('妹子信息數(shù)據(jù)', '妹子數(shù)據(jù)'), 'a+', newline='',
                          encoding='utf-8') as file_csv:
                    csv_writer = csv.writer(file_csv, delimiter=',')
                    csv_writer.writerow([name, xueli, job, marital_status, is_child, home, workplace, zeo_age,
                                         zeo_address, requ, monologue, img_url])
                    print(r'***妹子信息數(shù)據(jù)保存成功:{}'.format(name))



if __name__ == '__main__':
    main()

到此這篇關(guān)于單身狗福利?Python爬取某婚戀網(wǎng)征婚數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python爬取征婚數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 將Python的Django框架與認(rèn)證系統(tǒng)整合的方法

    將Python的Django框架與認(rèn)證系統(tǒng)整合的方法

    這篇文章主要介紹了將Python的Django框架與認(rèn)證系統(tǒng)整合的方法,包括指定認(rèn)證后臺(tái)和編寫認(rèn)證后臺(tái)等內(nèi)容,需要的朋友可以參考下
    2015-07-07
  • Python進(jìn)制轉(zhuǎn)換用法詳解

    Python進(jìn)制轉(zhuǎn)換用法詳解

    大家好,本篇文章主要講的是Python進(jìn)制轉(zhuǎn)換用法詳解,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • python調(diào)用staf自動(dòng)化框架的方法

    python調(diào)用staf自動(dòng)化框架的方法

    今天小編就為大家分享一篇python調(diào)用staf自動(dòng)化框架的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python 數(shù)據(jù)可視化pyecharts的使用詳解

    Python 數(shù)據(jù)可視化pyecharts的使用詳解

    這篇文章主要介紹了Python 數(shù)據(jù)可視化pyecharts的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Python如何對(duì)接文心一言

    Python如何對(duì)接文心一言

    這篇文章主要為大家介紹了Python如何對(duì)接文心一言的操作實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python?GUI布局工具Tkinter入門之旅

    Python?GUI布局工具Tkinter入門之旅

    這篇文章主要為大家介紹了Python?GUI布局工具Tkinter的基礎(chǔ),Tkinter?作為?Python?的標(biāo)準(zhǔn)庫,是非常流行的?Python?GUI?工具,同時(shí)也是非常容易學(xué)習(xí)的,今天我們就來開啟?Tkinter的入門之旅
    2022-08-08
  • Python?Setuptools的?setup.py實(shí)例詳解

    Python?Setuptools的?setup.py實(shí)例詳解

    setup.py是一個(gè)?python?文件,它的存在表明您要安裝的模塊/包可能已經(jīng)用?Setuptools?打包和分發(fā),這是分發(fā)?Python?模塊的標(biāo)準(zhǔn)。?它的目的是正確安裝軟件,本文給大家講解Python?Setuptools的?setup.py感興趣的朋友跟隨小編一起看看吧
    2022-12-12
  • 解決新版Pycharm中Matplotlib圖像不在彈出獨(dú)立的顯示窗口問題

    解決新版Pycharm中Matplotlib圖像不在彈出獨(dú)立的顯示窗口問題

    今天小編就為大家分享一篇解決新版Pycharm中Matplotlib圖像不在彈出獨(dú)立的顯示窗口問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python 把數(shù)據(jù) json格式輸出的實(shí)例代碼

    python 把數(shù)據(jù) json格式輸出的實(shí)例代碼

    下面小編就為大家?guī)硪黄猵ython 把數(shù)據(jù) json格式輸出的實(shí)例代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • python字典鍵值對(duì)的添加和遍歷方法

    python字典鍵值對(duì)的添加和遍歷方法

    下面小編就為大家?guī)硪黄猵ython字典鍵值對(duì)的添加和遍歷方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-09-09

最新評(píng)論

遂溪县| 根河市| 陆良县| 基隆市| 江孜县| 泰顺县| 团风县| 兴宁市| 泉州市| 建瓯市| 延寿县| 鹤庆县| 江源县| 东莞市| 阳曲县| 新干县| 怀集县| 余庆县| 古田县| 师宗县| 黄骅市| 集贤县| 金门县| 安远县| 宜昌市| 怀化市| 胶南市| 河池市| 兴城市| 榆林市| 荥经县| 十堰市| 镇赉县| 平谷区| 偃师市| 新疆| 加查县| 南川市| 东山县| 平利县| 茂名市|