数据爬取-历史上的今天

数据爬取-历史上的今天

前情提要

之前做的摸鱼邮件提醒,由于过了国庆假期,今年就没有假期了,倒计时部分就没有了盼头,得加点东西,看不见未来那就看看历史吧,加个历史上的今天部分。

关于数据源:百度有提供历史上的今天,那么爬一下再处理一下就完事了。看了一下内容也很简单,也不需要cookie啥的。

然后,日常逛github中,看到了一个gopup的项目,提供了一些公开的数据源,发现里面就有提供历史上的今天的数据,直接提供DataFrame,刚好之前也学过pandas 和nump库,对这个格式也不陌生,那这不就很方便,就处理一下就行了。

就开始写了起来。

代码部分

# encoding=utf-8
import gopup as gp
import re
import datetime


def history_today():
    df_index = gp.history_daily()
    f = open("./histroy-today" + datetime.datetime.now().strftime('%Y-%m-%d') + ".txt", "w", encoding='UTF-8')
    title = df_index['title']
    cl_title = []
    cl_year = []
    for x in title:
        # 正则表达式去掉<a>标签
        result = re.split('</a>', x)
        m = result[0]
        m = re.split('<a.*>', m)
        outstr = ""
        for n in m:
            outstr += n
        outstr += result[1]
        cl_title.append(outstr)
    for y in df_index['year']:
        # 处理年份数字
        if y[0] == '-':
            daystr = "公元前" + y[1:] + "年"
        else:
            daystr = y + "年"
        cl_year.append(daystr)
    for z in range(len(df_index['year'])):
        # 生成最终语句
        finalcontent = cl_year[z] + ',' + cl_title[z] + '\n'
        f.write(finalcontent)
    f.close()


if __name__ == "__main__":
    history_today()

成果

histroy-today2021-09-30.txt
1147年,南宋皇帝宋光宗赵惇出生
1626年,清朝创始人爱新觉罗·努尔哈赤逝世
1862年,德国首任宰相俾斯麦实行“铁血政策”
1895年,苏联元帅华西列夫斯基出生
1911年,意大利土耳其争夺的黎波里
1917年,大韩民国总统朴正熙出生
1920年,中国现代著名作家张爱玲出生
1924年,美国作家杜鲁门·卡波特出生
1938年,中华民国国务总理唐绍仪逝世
1941年,第二次世界大战,莫斯科保卫战开始
1949年,人民英雄纪念碑奠基
1955年,美国知名电影演员詹姆斯·迪恩逝世
1965年,印度尼西亚发生印尼九·三〇事件
1973年,故宫博物院创建人李石曾逝世
1990年,澳洲著名小说家帕特里克·怀特逝世
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值