用Jupyter—Notebook爬取网页数据实例1

爬取中国红娘网数据(精简版)

一、爬取过程分析
1、引入requests库,获取网页源代码:
在这里插入图片描述 2、引入BeautifulSoup库,解析网页源代码并获取所需数据: 在这里插入图片描述
3、利用for循环函数获取网页1页数据:在这里插入图片描述
4、利用for循环函数获取网页10页数据(获取页数只需变更for循环次数即可):在这里插入图片描述
5、引入pandas库,创建存储数据列表并将爬取网页数据在存储列表中输出:在这里插入图片描述6、引入openpyxl库,将爬取网页数据保存至excel表中(import os—os.getcwd()用于查看数据保存位置):在这里插入图片描述
2、爬取函数汇总
在这里插入图片描述
上代码:

#主函数
import requests
from bs4 import BeautifulSoup
import pandas as pd
import openpyxl
#定义存储变量
nianling=[]
diqu=[]
hunyin=[]
shengao=[]
jieshao=[]
#获取网页源代码的函数
for i in range(6071):
    url='http://www.hongniang.com/match?&page'+str(i)
    request=requests.get(url)
    html=request.text
#解析源代码,提取信息
    soup=BeautifulSoup(html,'html.parser')
    for info in soup.find_all('li',class_='pin'):
        nianling.append(info.find_all('span')[1].text)
        diqu.append(info.find_all('span')[2].text)
        hunyin.append(info.find_all('span')[3].text)
        shengao.append(info.find_all('span')[4].text)
        jieshao.append(info.find_all('div',class_='db')[0].text.replace('\t','').replace('\r','').replace('\n','').replace(' ','')[5:])
pd.DataFrame({'年龄':nianling,'地区':diqu,'婚姻状况':hunyin,'身高':shengao,'介绍':jieshao}) 
data=pd.DataFrame({'年龄':nianling,'地区':diqu,'婚姻状况':hunyin,'身高':shengao,'介绍':jieshao})
writer=pd.ExcelWriter('data.xlsx')
data.to_excel(writer,'爬虫数据')
writer.save()
  • 31
    点赞
  • 231
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值