excel抓取网页动态数据( Stock代码爬取代码的基本思路是什么意思?(一))
优采云 发布时间: 2022-02-23 02:22excel抓取网页动态数据(
Stock代码爬取代码的基本思路是什么意思?(一))
实例描述
通过编写爬虫,爬取指定日期期间所有上市公司的*敏*感*词*,根据股票代码保存到对应的Execl文件中。
本案例主要分为两步: 1)了解什么是上市公司;2)根据每家上市公司的股票数量爬取数据。两部分代码相对独立,可以做成两个代码文件。一个文件用于爬取 Stock 代码,另一个文件用于爬取 Stock 内容。
爬取股票代码
爬取股票代码的基本思路是:
1)在网站上分析网页的源代码,找到目标代码。
2)使用正则表达式在整个网页中搜索目标代码以提取请求的信息。
定位目标网站
使用 Chrome 浏览器访问链接以查看所有股票代码;
打开调试窗口查看网页代码
保持当前浏览器窗口为活动页面,按F12键显示网页源代码调试窗口,点击调试窗口的Element按钮,可以看到该页面的HTML代码。
在网页源代码中找到目标元素
网页的源代码根据 HTML 的语法规则自动折叠。可以通过用光标单击 HTML 代码中的任意位置来展开它。当你移动到一个元素时,你会看到右侧网页上对应的元素会发生变化,呈现选中状态。
分析目标源代码找出规律
上图左侧显示的内容与右侧代码的对应关系。左侧显示的每个 Stock 代码对应的源代码格式是固定的。
下图所示的源代码内容就是要查找的目标代码。“.html”前面的“股票代码”就是需要爬取的内容。
编写代码爬取股票代码
编写代码实现urlTolist函数,并在该函数中实现主要的爬取功能;
1)使用urllib.request模块中的urlopen函数访问目标链接;
2)通过urlopen返回值的read方法获取网页的全部内容;
3)使用re模块下编译韩文风格做正则表达式的计算模板,模板字符串为之前分析的网页的目标代码;
4)调用堆返回对象的findall方法对网页的html代码进行正则表达式计算。得到的返回值code就是最终爬取的内容。
运行上述代码的结果如下;
抓取库存内容
通过访问网易提供的服务接口,您可以获得股票内容。只需按照它提供的请求格式,传入股票代码和要查看的时间段,就可以得到股票的具体数据。
编写代码以抓取批量内容
代码实现方面,仍然使用 urllib.request 模块进行网络请求,会调用 urllib.request 模块下的 urlretrieve 函数将返回的数据保存在 Excl 表中。
代码中设置的时间段为8个月以上,即20180101到20180831.保存的结果放在D盘的all_stock_data路径下。为保证save操作的正常进行,请确保all_stock_data文件夹存在于D盘。(如果没有,请先创建一个)
显示运行代码的结果
代码运行后,可以在D盘的all_stock_data文件夹中找到生成的*敏*感*词*文件。
刮库存数据的情况结束了。
其他刮取物品的技术
爬虫是Python语言中应用广泛的项目方向,涉及的知识很多。限于篇幅,提供简单的例子。还有多线程并发爬取、动态网页爬取、跨域处理、子链搜索、自动登录提权爬取、反爬取处理等多种技术。