本帖最后由 minjun2046 于 2021-2-10 19:30 编辑
感谢大哥给的启发,原帖地址:https://www.52pojie.cn/forum.php ... 2%CE%C5%C1%AA%B2%A5
昨天看到@Hangjau 的帖子,代码已经写的很详细了,我就想着我没有服务器啊,准备放到云函数,折腾了好久,因为源代码用到了如lxml,yagmail等库,我也就是个小白,搞不上第三方库,所以啊折腾了半天搞不出来,
索性按照老哥的思路自己写了一下,
语言:python 库:
re -------正则
requests--------网络请求
datatime--------时间操作
简单易懂,用最简单粗暴方法,代码量差不多30行,发送微信原理用到sever酱,
[Python] 纯文本查看 复制代码 # -*- coding: utf8 -*-
# -*- coding: utf-8 -*-
"""
Created on Sun Nov 29 10:47:40 2020
@author: MJ
"""
import requests
import re
import datetime
res=[]
url='http://www.xwlbo.com/txt.html'
tit=requests.get(url=url).text
#打开新闻联播文字版主页
time = datetime.datetime.now().timetuple()
date_time = str(time.tm_year) + '年' + str(time.tm_mon) + '月' + str(time.tm_mday-1) +"日新闻联播文字完整版内容"
#date_time = (datetime.date.today() + datetime.timedelta(-1)).strftime("%Y-%#m-%#d").replace('-', '{}').format('年','月') + "日新闻联播文字完整版内容"
#获取时间
print(tit)
print(date_time)
id=re.findall(r'id="v(.*?)">%s'%(date_time),tit)
print(id)
id=id[len(id)-1]
#取得id
idurl='http://www.xwlbo.com/%s.html'%(id)
title=requests.get(url=idurl).text
#获取对应id内容
b=re.findall(r'.html">(.*?)</a></strong></p><p>', title)
n=re.findall(r'</strong></p><p>(.*?)</p><p><strong>',title)
#提出所需要内容
try:
for i in range (0,len(b)-1):
res.append('标题:'+b[i]+'\n\n')
res.append(n[i].replace('</p><p>','')+'\n')
res.append('\n')
except:
pass
s = ''.join(res)
#转换好要发送的内容
data={
'text':'新闻联播文字版',
'desp':s,}
print(requests.post(url='https://sc.ftqq.com/换成你的.send',data=data))
代码复制到云函数以后再搞个时间触发就ok了,只需要换sever酱码,
对了因为我用的是re.findall,所以最后一个国际新闻匹配不到,也没花时间去搞(反正也是假新闻!),还望老哥们指点。
2021-2-10
更新一下,老早就修改了,当时存在一个问题,就是如果日期是单数,跟接收的信息不匹配(如2021-2-9,接收的却是2021-2-09),具体记不清楚了,如还有需要的,修改一下,问题已解决。
效果图
效果图
ps:还有啥好玩的啊? |