Python爬虫--股票网页爬取小实例--爬取内容保存本地excel表格

程序的目标功能:
爬取网页内容处理后,保存本地excel表格
程序的思路:

步骤1、从**https://money.cnn.com/data/dow30/**获取股票信息;
步骤2、利用re正则表达式提取出自己想要的股票信息,并且转换为DataFrame数据类型;
步骤3、使用to_excel方法将数据保存为本地excel类型。

废话不多说,直接上码:

# -*- coding: utf-8 -*-
"""
Created on Fri May  8 19:01:14 2020

@author: Administrator
"""
import requests
import re
import pandas as pd

def retrieve_dj_list():
    try:
        r = requests.get('http://money.cnn.com/data/dow30/') #获取网页详情
        r.raise_for_status()
        r.encoding = 'utf-8' #编码设置为utf-8
    except ConnectionError as err:  #try-except结构,当网络连接有err时,打印错误
        print(err)
    #使用re正则表达式获取股票code 和公司名称、价格
    search_pattern =re.compile(r'class=\"wsod_.*\">(.*?).*?(.*?)\s+.*?class="wsod_stream">(.*?)')
    stock_info_list_text= re.findall(search_pattern, r.text)
    stock_info_list = []
    for item in stock_info_list_text:
        stock_info_list.append({'code': item[0], 'name': item[1], 'price': item[2]})
        
    return stock_info_list

dji_list = retrieve_dj_list()
djidf = pd.DataFrame(dji_list) #爬取列表转化为DataFrame类型
path = r'C:\Users\Administrator\Desktop\Python\用Python玩转数据'
name1 = r'\stocks.xls' #设置列表name
djidf.to_excel(path+name1,sheet_name = 'stock_info') #使用DataFrame数据类型的to_excel方法生成excel文件
print(djidf) #打印爬取下来的DataFrame数据


打印的DataFrame的内容:
Python爬虫--股票网页爬取小实例--爬取内容保存本地excel表格_第1张图片
这是保存本地的excel内容

Python爬虫--股票网页爬取小实例--爬取内容保存本地excel表格_第2张图片

你可能感兴趣的:(Python,爬虫小实例)