上代码:

'''
本代码用来爬取https://www.babyment.com/yingwenming/kaitou.php?start_letter=A&page=1的信息
'''import requests,csv,time,random
from bs4 import BeautifulSoup
from fake_useragent import UserAgent#获取ip列表
def get_ip_list():    f=open('IP.txt','r')    ip_list=f.readlines()    f.close()    return ip_list    #从IP列表中获取随机IP
def get_random_ip(ip_list):    proxy_ip = random.choice(ip_list)    proxy_ip=proxy_ip.strip('\n')    proxies = {'http': proxy_ip}    return proxies #功能:将信息写入文件
def write_file(filePath,row):      with open(filePath,'a+',encoding='utf-8',newline='') as csvfile:      spanreader = csv.writer(csvfile,delimiter='|',quoting=csv.QUOTE_MINIMAL)      spanreader.writerow(row) #解析baby网
def get_EnNames_list(url,ip_list):print('输入进来的url为:{}'.format(url))#获取随机IP,headers防止ip被封headers = {'User-Agent':str(UserAgent().random)}proxies = get_random_ip(ip_list)try:req = requests.get(url=url,headers=headers,proxies=proxies,timeout=10)except:print('运行出错10秒后重新运行')time.sleep(10)headers = {'User-Agent':str(UserAgent().random)}proxies = get_random_ip(ip_list)req = requests.get(url=url,headers=headers,proxies=proxies,timeout=10)#在利用find_all()注意要准确定位soup = BeautifulSoup(req.text,'lxml')content = soup.find('table',class_='table')content = content.find('tbody')content = content.find_all('tr')name = []#列表中没有find_all()方法,故需要利用for语句for each in content:name.append(each.find_all('b')[0].get_text())return name#获取baby网中所有的的英文名
def get_EnNames(letter,ip_list):for number in range(1,100):url = 'https://www.babyment.com/yingwenming/kaitou.php?start_letter={}&page={}'.format(letter,number)#一个网页一个网页的获取我们需要的英文名name = get_EnNames_list(url,ip_list)#当page遇到最大值时,name就会为空,我们利用这一点进行切换,进入下一个字母的爬取if not name:print('{}开头的英文名共{}个'.format(letter,number-1))breakfor each in name:#将一个列表分为多个列表,从而实现换行a=[]a.append(each)write_file('A-Z.csv',a)if __name__ == "__main__":ip_list = get_ip_list()for letter in 'ABCDEFGHIJKLMNOPQRSTUVWXYZ':get_EnNames(letter,ip_list)

Python3--baby网的数据爬取相关推荐

  1. python爬人人贷代码视频_【IT专家】人人贷网的数据爬取(利用python包selenium)

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 人人贷网的数据爬取(利用 python 包 selenium ) 2016/12/31 0 记得之前应同学之情,帮忙爬取人人贷网的借贷人信息,综合 ...

  2. 网贷数据爬取及据分析

    关于数据来源 本项目写于2017年七月初,主要使用Python爬取网贷之家以及人人贷的数据进行分析. 网贷之家是国内最大的P2P数据平台,人人贷国内排名前二十的P2P平台. 源码地址 数据爬取 抓包分 ...

  3. python如何爬虫股票数据_简单爬虫:东方财富网股票数据爬取(python_017)

    需求:将东方财富网行情中心的股票数据爬取下来,包括上证指数.深圳指数.上证A股.深圳A股.新股.中小板.创业板 等 一.目标站点分析 东方财富网的行情中心页面包含了所有股票信息.在左侧的菜单栏中包含了 ...

  4. 金投网煤炭数据爬取-精进版

    金投网数据爬取-加强版 注:博主经过一个暑假的游手好闲,学习到了xpath及一些其他的有意思的小东西.对于之前爬取金投网的课题有了一些新的思路,特此卷土重来,让我们开始吧! 目录标题 金投网数据爬取- ...

  5. 人人贷网的数据爬取(利用python包selenium)

    记得之前应同学之情,帮忙爬取人人贷网的借贷人信息,综合网上各种相关资料,改善一下别人代码,并能实现数据代码爬取,具体请看我之前的博客:http://www.cnblogs.com/Yiutto/p/5 ...

  6. 爬虫:东方财富网股票数据爬取

    前言 因为东方财富网的Js限制,第一页很好爬取,但是第二页开始的网页地址并没有改变,看了下xpath页面元素也和第一页没什么区别,所以只好曲线救国,用selenium找到"下一页" ...

  7. 爬虫实例:链家网房源数据爬取

    初接触python爬虫,跟着视频学习一些很基础的内容,小小尝试了一下,如有错误感谢指正. 库和方法介绍: (1)requests requests是python的工具包,用于发出请求,,是用来获取网站 ...

  8. Python:好租网商务楼数据爬取

    前言: 爬的方法和以前房天下类似,只是在使用next_sibling的时候一直不成功,所以先找了parent然后再找儿子的方式曲线救国解决了. 因为我的需求只是名字.区域.地址和楼层四个,所以参数不多 ...

  9. python爬虫和医学数据_Python爬虫入门教程 24-100 微医挂号网医生数据抓取

    1. 微医挂号网医生数据写在前面 今天要抓取的一个网站叫做微医网站,地址为 https://www.guahao.com ,我们将通过python3爬虫抓取这个网址,然后数据存储到CSV里面,为后面的 ...

最新文章

  1. 面试看缘分php,php测试姓名缘分指数
  2. mysql待办事项表名_SSD8-Ex4待办事项列表答案参考
  3. Remoting系列(二)----建立第一个入门程序
  4. Ajax异步(客户端测试)
  5. 自律的程度,决定你人生的高度
  6. C++重载操作符详解
  7. WPF in Finance
  8. [16]manjaro安装nvidia驱动
  9. python人工智能小程序_推荐几款“真”人工智能技术小程序
  10. 穿越火线枪战王者服务器维护,CF手游体验服7.3维护公告 战争风云模式登场
  11. 【个税】2020年个人所得税计算规则
  12. zabbix5.0手把手搭建过程
  13. java技术总监_技术总监-JAVA岗位职责
  14. uni-app 图片自适应视图容器
  15. CTFshou wed命令执行29~50
  16. hbase数据库_hbase数据库 修改数据
  17. 安卓开发--运行你的APP
  18. Roadblock for Mac(Safari广告内容拦截软件)
  19. 基于混沌系统的文本加密算法研究系列
  20. 【知识图谱】Neo4j的基本使用及思知1.4亿三元组数据构建知识图谱

热门文章

  1. source insight搜不到关联代码
  2. 计算机科学与技术第二章ppt,计算机科学与技术-编译原理-第二章重点.ppt
  3. vba sub是什么缩写_这些掌握了,你才敢说自己懂VBA
  4. 计算机游戏的作文,玩电脑游戏作文
  5. Java SE 6.0编程指南_Java SE 6.0 编程指南(附光盘)
  6. r指引到文件夹_R语言中进行文件夹及文件夹内文件操作范例
  7. C++中继承的基本概念
  8. gzip、bzip2和tar
  9. android如何编译lame,Android 编译 Lame 库心路历程
  10. java 方法引用无效_InvalidProgramException:调用方法时无效的IL代码