最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用Python實現每日新聞推送

 更新時間:2023年06月18日 10:29:29   作者:ooyq  
這篇文章主要為大家詳細介紹了如何使用Python編寫簡單的邏輯,通過調用API接口實現每日新聞推送功能,感興趣的小伙伴可以跟隨小編一起學習一下

前言

本文將介紹如何使用Python編寫簡單的邏輯,通過調用API接口實現每日新聞推送功能。

步驟

1.導入所需的庫: 在代碼的開頭,我們需要導入所需的庫。通常,我們會使用requests庫來發(fā)送HTTP請求,以獲取新聞數據。

import os
import requests

2.設置環(huán)境變量【可選】:環(huán)境變量是在操作系統(tǒng)或運行環(huán)境中設置的全局變量,可以存儲一些敏感或配置信息,例如API密鑰、訪問令牌等。通過使用環(huán)境變量,可以將這些敏感信息與代碼分離,提高代碼的安全性和可維護性。

pushplus_token = os.environ.get('pushplus_token')   #pushplus推送令牌
topic = os.environ.get('topic')   #pushplus群組id

PUSHPLUS_TOKEN

Pushplus 官網申請,免費微信消息推送

在這個例子中,os.environ.get('pushplus_token')和os.environ.get('topic')分別獲取名為pushplus_token和topic的環(huán)境變量的值。這些環(huán)境變量應該在運行代碼之前在操作系統(tǒng)或運行環(huán)境中進行設置。

獲取環(huán)境變量的好處是,您可以在不修改代碼的情況下,根據需要在不同的環(huán)境中設置不同的值。例如,在開發(fā)環(huán)境和生產環(huán)境中可以使用不同的推送令牌和主題,而無需更改代碼本身。

通過使用os.environ.get()函數,可以安全地獲取環(huán)境變量的值。如果環(huán)境變量不存在,get()函數將返回None,因此您可以根據需要進行錯誤處理或設置默認值。

3.調用新聞API接口: 新聞API接口是一個提供新聞數據的服務。我們可以使用requests庫向API發(fā)送HTTP請求,獲取新聞數據的響應。根據API提供的文檔,我們可以了解如何構造請求,例如指定新聞的類別、時間范圍等。

image_url = "https://api.03c3.cn/zb/"  #圖片版本接口
text_url = "https://api.03c3.cn/zb/text.php"  #文字版本接口

4.解析API響應: 獲取到API的響應后,我們需要使用適當的方法對其進行解析。通常情況下,API響應會以JSON格式返回,我們可以使用Python的內置json庫將其解析為可操作的數據。

text_response = requests.get(text_url)
content = text_response.text

在requests庫中,text屬性是一個返回響應內容的屬性。當使用requests.get()方法發(fā)送GET請求并獲取到響應后,可以通過text屬性獲取響應內容的純文本形式。
在這個特定的例子中,text_response.text將獲取到的API響應內容以純文本形式賦值給content變量,以便后續(xù)使用。這樣可以將API返回的純文本內容作為推送消息的一部分,進行進一步處理和構造推送數據。

5.提取新聞內容: 通過解析API響應,我們可以提取出需要的新聞內容,例如新聞標題、摘要和鏈接等信息??梢詫⑻崛〉男畔⒋鎯υ谶m當的數據結構中,例如列表或字典。

6.設置推送參數: 在代碼中,我們可以定義推送的參數,例如推送標題、內容格式和目標用戶等。根據推送服務提供商的要求,我們可以選擇合適的參數設置。

7.構造推送消息: 使用獲取到的新聞信息,我們可以根據推送服務的要求,構造推送消息的格式??梢詫⑿侣剺祟}和鏈接等信息整合為一條推送消息,以便發(fā)送給用戶。

pushplus_data = {
    "token": pushplus_token,
    "title": "每天60秒讀懂世界",
    "content": "{}<br/><img src='{}' />".format(content,image_url),
    # "topic": "群組ID",
    "template": "html"
}

pushplus_data字典定義了推送消息的參數和內容。其中:

  • "token"字段存儲了推送服務的訪問令牌,它的值是之前從環(huán)境變量中獲取的pushplus_token。
  • "title"字段存儲了推送消息的標題,它的值是固定的字符串 "每天60秒讀懂世界"。
  • "content"字段存儲了推送消息的內容,它的值是通過格式化字符串的方式將content和image_url插入到HTML模板中的。其中,content是之前從API獲取的新聞內容,image_url是存儲圖片URL的變量。
  • "template"字段指定了推送消息的模板類型,這里使用了HTML模板。

注意:在代碼中有一行注釋掉的 "topic": "群組ID" 字段,這是用于指定推送消息發(fā)送到指定群組的ID,如果需要發(fā)送到特定的群組,可以取消注釋并設置相應的群組ID值。

8.發(fā)送推送請求: 使用推送服務提供商的API,我們可以通過發(fā)送HTTP請求,將構造好的推送消息發(fā)送給目標用戶。推送服務將根據提供的參數,將推送消息推送到用戶的設備上。

pushplus_url = "https://www.pushplus.plus//send"
requests.post(pushplus_url, json=pushplus_data)

pushplus_url變量存儲了推送服務提供商的API地址,即要發(fā)送POST請求的目標URL。

最后,使用requests.post()方法向pushplus_url發(fā)送POST請求,將pushplus_data以JSON格式作為請求的正文進行傳遞。這樣,推送服務提供商的API將根據傳遞的參數和內容,將推送消息發(fā)送給目標用戶。

完整代碼

import os
import requests
pushplus_token = os.environ.get('pushplus_token')
topic = os.environ.get('topic')
image_url = "https://api.03c3.cn/zb/"
text_url = "https://api.03c3.cn/zb/text.php"
text_response = requests.get(text_url)
content = text_response.text
pushplus_url = "https://www.pushplus.plus//send"
pushplus_data = {
    "token": pushplus_token,
    "title": "每天60秒讀懂世界",
    "content": "{}<br/><img src='{}' />".format(content,image_url),
    # "topic": "群組ID",
    "template": "html"
}
requests.post(pushplus_url, json=pushplus_data)

工作流文件

name: auto
on:
  schedule:
    - cron: '30 22 * * *' #每天六點半
  workflow_dispatch: 
env:
  pushplus_token: ${{ secrets.PUSHPLUS_TOKEN }} 
  topic: ${{ secrets.TOPIC }}
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Check out the repository
        uses: actions/checkout@v3
      - name: Set up Python 
        uses: actions/setup-python@v3
        with: 
          python-version: '3.10'
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          pip install requests 
      - name: Run main.py
        run: python main.py  #文件名

倉庫地址,可以直接Fork配置運行

希望本文能夠幫助您了解如何利用Python實現每日新聞推送功能的簡單邏輯。

到此這篇關于利用Python實現每日新聞推送的文章就介紹到這了,更多相關Python新聞推送內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python監(jiān)控鍵盤輸入實例代碼

    python監(jiān)控鍵盤輸入實例代碼

    這篇文章主要介紹了python監(jiān)控鍵盤輸入實例代碼,分享了相關代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • 如何在python中寫hive腳本

    如何在python中寫hive腳本

    這篇文章主要介紹了如何在python中寫hive腳本,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Python把PDF表格完整轉換成Excel的小白教程

    Python把PDF表格完整轉換成Excel的小白教程

    本文通過一個完整的Python示例,詳細介紹了如何將多頁PDF表格轉換為Excel文件,文中包括整體思路、核心代碼解析、示例PDF模板及預期處理結果等內容,旨在幫助用戶理解和掌握PDF表格處理技巧,需要的朋友可以參考下
    2026-04-04
  • Python數據結構與算法之字典樹實現方法示例

    Python數據結構與算法之字典樹實現方法示例

    這篇文章主要介紹了Python數據結構與算法之字典樹實現方法,可實現針對單詞出現次數的統(tǒng)計功能,涉及Python樹結構的定義、遍歷及統(tǒng)計等相關操作技巧,需要的朋友可以參考下
    2017-12-12
  • Python中虛擬環(huán)境依賴問題的解決方案詳解

    Python中虛擬環(huán)境依賴問題的解決方案詳解

    在Python開發(fā)中,虛擬環(huán)境和依賴管理是必不可少的工具,本文將以一個實際案例為基礎,詳細分析如何解決Python虛擬環(huán)境中的依賴問題,希望對大家有所幫助
    2025-03-03
  • Python實現基于Fasttext的商品評論數據分類的操作流程

    Python實現基于Fasttext的商品評論數據分類的操作流程

    這篇文章主要介紹了Python實現基于Fasttext的商品評論數據分類,今天使用的fasttext更像是一個集成的庫,把向量化和分類一起做掉了,這個對于使用層面來講就更方便了一些,需要的朋友可以參考下
    2022-06-06
  • python字典鍵值對的添加和遍歷方法

    python字典鍵值對的添加和遍歷方法

    下面小編就為大家?guī)硪黄猵ython字典鍵值對的添加和遍歷方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Python使用zipfile解壓文件中文亂碼問題的具體原因和解決方案

    Python使用zipfile解壓文件中文亂碼問題的具體原因和解決方案

    在 Python 中使用 zipfile 模塊解壓文件時,中文文件名亂碼通常是由于 ZIP 文件的編碼標準不統(tǒng)一 導致的,本文給大家介紹了詳細的原因和解決方案,需要的朋友可以參考下
    2025-09-09
  • 使用Python畫了一棵圣誕樹的實例代碼

    使用Python畫了一棵圣誕樹的實例代碼

    這篇文章主要介紹了使用Python畫了一棵圣誕樹的實例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Python 網絡編程說明

    Python 網絡編程說明

    socket 是網絡連接端點。
    2009-08-08

最新評論

遵义县| 广丰县| 微山县| 曲松县| 凯里市| 安仁县| 巩义市| 柳林县| 鹤山市| 龙游县| 承德市| 腾冲县| 鹿邑县| 井陉县| 宝兴县| 资兴市| 寿阳县| 衡山县| 辽源市| 施秉县| 富裕县| 溆浦县| 大理市| 无锡市| 开封市| 清涧县| 孙吴县| 修水县| 申扎县| 民乐县| 霍山县| 清涧县| 密云县| 含山县| 武穴市| 始兴县| 青神县| 凭祥市| 鄂州市| 潜江市| 徐州市|