5行Python代码采集3000+上市公司信息,很爽

嗨害大家好鸭!我是爱摸鱼的芝士❤

毕业季也到了找工作的季节了,
很多小伙伴都会一家一家的公司去看,
这得多浪费时间啊。

今天用Python教大家怎么采集公司的信息,
相信大家会很喜欢这个教程的,nice!

python 安装包+资料:点击此处跳转文末名片获取

在这里插入图片描述

基本环境配置

◾版本:Python3

◾系统:Windows

◾相关模块:pandas、csv

爬取目标网站

请添加图片描述

5行实现代码

import pandas as pd
import csv
for i in range(1,178):  # 爬取全部页
    tb = pd.read_html('http://s.askci.com/stock/a/?reportTime=2017-12-31&pageNum=%s' % (str(i)))[3] 
    tb.to_csv(r'1.csv', mode='a', encoding='utf_8_sig', header=1, index=0)

3000+ 上市公司的信息,
安安静静地躺在 Excel 中:
请添加图片描述

有了上面的信心后,
我开始继续完善代码,
因为 5 行代码太单薄,
功能也太简单,
大致从以下几个方面进行了完善:

- [ ] •增加异常处理

由于爬取上百页的网页,中途很可能由于各种问题导致爬取失败,所以增加了 try except 、if 等语句,来处理可能出现的异常,让代码更健壮。

- [ ] •增加代码灵活性

初版代码由于固定了 URL 参数,所以只能爬取固定的内容,但是人的想法是多变的,一会儿想爬这个一会儿可能又需要那个,所以可以通过修改 URL 请求参数,来增加代码灵活性,从而爬取更灵活的数据。

- [ ] •修改存储方式

初版代码我选择了存储到 Excel 这种最为熟悉简单的方式,人是一种惰性动物,很难离开自己的舒适区。但是为了学习新知识,所以我选择将数据存储到 MySQL 中,以便练习 MySQL 的使用。

- [ ] •加快爬取速度

初版代码使用了最简单的单进程爬取方式,
爬取速度比较慢,
考虑到网页数量比较大,
所以修改为了多进程的爬取方式。

经过以上这几点的完善,
代码量从原先的 5 行增加到了下面的几十行:

import requests
import pandas as pd
from bs4 import BeautifulSoup
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值