分享好友 最新动态首页 最新动态分类 切换频道
如何利用 Python 爬虫实现给微信群发新闻早报?(详细
2024-12-26 11:52

第 3 步,参数化,去重

如何利用 Python 爬虫实现给微信群发新闻早报?(详细

去掉数据中重复的新闻,然后将最后展示的数目参数化

news_sorted_pro = sorted(news, key=itemgetter(‘news_approve_num’), reverse=True)

result = []

for news_sorted_item in news_sorted_pro:

result.append(news_sorted_item.get(‘title’))

result = sorted(set(result), key=result.index)

result = result[:self.news_num] if len(result) >= self.news_num else result

需要注意的是,由于新闻网站会经常改版,建议爬取多个新闻网站,做好异常处理,做一个优先级,如果一个网站爬取数据失败,切换到下一个级别的网站爬取数据

服务化


将数据服务化,即编写 API,目的是为了方便终端调用

如果使用 Python 编写 API,建议使用 FastAPI 或 Flask 框架,因为这两个框架开发 API 方便快捷,以 FastAPI 为例

第 1 步,安装依赖

包含 FastAPI 框架及 hypercorn 依赖,hypercorn 是独立的 ASGI 服务器,方便 FastAPI 项目的部署

pip3 install fastapi

pip3 install hypercorn

第 2 步,编写 API

使用 FastAPI 很方便,不到 10 行代码就能编写一个接口服务

只需要实例化 FastAPI 对象,利用装饰器指定请求方法和路径即可,调用上面的爬虫方法即可。

from fastapi import FastAPI

app = FastAPI()

@app.get(“/last_news”)

def get_last_news():

“”"

最新的新闻

:return:

“”"

news = get_news()

data = {

‘code’: 0,

‘news’: news

}

return data

如要想本地调试 API,可以通过 uvicorn 命令运行项目

uvicorn news:app --reload

然后访问下面的地址,查看返回的新闻数据

第 3 步,生成依赖迁移文件

使用 pip freeze 命令将在本地生成依赖迁移文件

pip freeze > requirements.txt

第 4 步,上传代码

将代码上传到代码托管平台,比如:码云、GitLab 等

第 5 步,服务器拉取代码

服务器中通过 git 拉取代码,并通过依赖文件一键安装所有依赖

pip3 install -r requirements.txt

第 6 步,运行服务

使用 hypercorn 运行 FastAPI 项目,使进程一直在后台运行,并保存运行日志信息

需要注意的是,项目绑定的端口号需要在防火墙和云服务器安全组开启

当然,如果使用 Java 编写 API,推荐使用 Spring Boot,可以快速开发一个 Restful API 服务

编写 App


完成 API 服务之后,接下来就是在终端编写一款 App 去访问 API,拿到数据并展示出来

以编写一款 Android 应用为例

首先,我们在界面上放置一个文本显示框和一个按钮控件

然后,对按钮控件设置点击事件的监听

get_news_btn = findViewById(R.id.get_news_btn);

//监听事件

get_news_btn.setOnClickListener(this);

@Override

public void onClick(View v)

{

switch (v.getId())

{

case R.id.get_news_btn:

news_et.setText(“获取中。。。”);

getNewsMet();

break;

}

}

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

二、Python必备开发工具

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

五、实战案例

六、面试宝典

六、面试宝典

最新文章
销量见证性价比 十月最佳热销手机排行榜
  对于绝大多数购机的朋友来说,最为关心的问题首先是机器怎么样,是否适合自己,其次就是这机器的价格了。机器再好价格高昂,那也只有眼巴巴看着的份,在很多时候兜里钱就直接决定着我们会去关注什么样价位的产品,在购机的过程当中甚至
茂名爱采购运营价格
百度爱采购的服务:全网优质资源。接入全网优质网站,优质在线商家和商品遍布各个行业,覆盖各大类别。爱采购依托百度强大的搜索技术,服务大量用户,利用AI技术快速处理信息,匹配需求线索,准确到达买卖双方。该平台可直接到达全网商品信
浙江东方(600120)个股分析
[{"date":"2024-05-31","value":"182","field":"0"},{"date":"2024-06-03","value":"-1960","field":"0"},{"date":"2024-06-04&q
请问广告主想要投放广告是选小红书乘风平台还是小红书聚光平台呢?
2022年08月26日陈建贵100资深效果广告开户代运营公司,小红书、B站信息流广告,达人探店种草,抖音千川,腾讯视频号等广告开户代运营日用百货销售;化妆品批发;食品销售(仅销售预包装食品);化妆品零售;新鲜水果零售;互联网销售(除销售需
通信工程师:C网电信认证(题库版).docxVIP
通信工程师:C网电信认证(题库版)1、多选?基于RADIUS的远端接入环境一般由三个主要部件构成()。A.接入客户端B.网络接入服务器C.RADIUS服务器正确答案:A,B,C2、单选?投诉处理结果通过工单接(江南博哥)口进行传递,工单接口的形式为:
最强AI美女写真生成工具评测:用搜狐简单AI创造你的数字女友!
在这个充满科技和创造力的时代,美女写真不再是摄影师的专属特权。你是否曾幻想过拥有一款能够生成超逼真美女照片的AI工具?你渴望用自己的想象,把心中的女神通过科技变为现实吗?今天,我们就来深入探讨一款热门的AI生图工具——搜狐简单
购买笔记软件哪个便宜点
无论是日常生活还是工作学习中,大家都离不开笔记软件的支持。笔记软件是一款用于记录、整理和存储信息的工具,不同的产品有着不同的功能和特性,价格自然也不相同。那么哪个便宜呢,本文就为大家介绍一下为知笔记、思源笔记、Obsidian这三
犯太岁戴玉镯可以吗,犯太岁戴玉镯:能否带来好运?
女士犯太岁戴和田玉能够吗?和田玉作为一种被广泛用于佩戴和收藏的宝石一直以来都备受人们的推崇和喜爱。在传统的迷信观念中人们相信某些年份的生肖属于太岁的冲到了属于冲太岁的年份就需要特别留意自身的运势和健康以避免招惹不利之事。那
中国智慧政府行业市场动态分析及投资前景研判报告
​​本报告由智研咨询出品,经专业研究报告编撰团队实时监测与更新,最终得以呈现。报告研究基于研究团队收集到的大量一手和二手信息,研究过程综合考虑行业各种影响因素,包括市场环境、产业政策、历史数据、行业现状、竞争格局、技术革新
使用 5118 挖词工具时如何提高关键词挖掘的效率?
要提高使用 5118 挖词工具进行关键词挖掘的效率,可以考虑以下几点:1.明确目标和需求:在开始挖掘之前,清晰地确定您的业务目标、受众群体以及内容方向。这有助于更有针对性地选择关键词。2.精确输入核心关键词:确保输入的核心关键词能够
相关文章
推荐文章
发表评论
0评