如何实现自己的网页中某板块同步某门户网站新闻标题的功能
详细描述:
我的网页A,某门户网页B,现在需要把B页面某新闻板块的新闻标题放到A页面上;
A网页上同步B网页上的新闻标题和链接,无需同步新闻内容。
B网页上的新闻标题更新则A网页的更新是同步的。
注:不使用IFAME,使用iframe框架B页面的新闻板块到A网页上也可以实现同步新闻标题的更新,但是新闻标题的样式和顺序等我无法控制。
如何实现自己的网页中某板块同步某门户网站新闻标题的功能
详细描述:
我的网页A,某门户网页B,现在需要把B页面某新闻板块的新闻标题放到A页面上;
A网页上同步B网页上的新闻标题和链接,无需同步新闻内容。
B网页上的新闻标题更新则A网页的更新是同步的。
注:不使用IFAME,使用iframe框架B页面的新闻板块到A网页上也可以实现同步新闻标题的更新,但是新闻标题的样式和顺序等我无法控制。
第二版源码:Python服务器:
@app.route('/')
def index():
hot_news = getNews()
return render_template("index.html", news = hot_news,works = works)
Python爬取功能:
import requests as rq
from bs4 import BeautifulSoup
URL = 'https://www.cls.cn/'
headers = {
'host': 'www.cls.cn',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36',
}
def getNews():
news = {}
try:
res = rq.get(URL,headers = headers)
res.encoding = 'utf-8'
soup = BeautifulSoup(res.text,'lxml')
hot = soup.find_all('a',class_='f-w-b c-ef9524 b-c-222')
for a in hot:
news[a.text] = "https://www.cls.cn" + a['href']
hot2 = soup.find_all('a',class_='f-w-b c-222 b-c-222')
for b in hot2:
news[b.text] = "https://www.cls.cn" + b['href']
hot3 = soup.find_all('a',class_='clearfix o-h f-s-23 f-w-b home-article-title home-article-title-small')
for c in hot3:
news[c.text] = "https://www.cls.cn" + c['href']
hot4 = soup.find_all('a',class_='c-383838 w-100p o-h home-article-rec-list')
for d in hot4:
news[d.text] = "https://www.cls.cn" + d['href']
except:
with open("./static/news.txt",encoding='utf-8') as f:
contents = f.readlines()
for content in contents:
content = content.split(",")
news[content[0]] = content[1]
return news
def get_news():
news = {}
with open("./static/news.txt",encoding='utf-8') as f:
contents = f.readlines()
for content in contents:
content = content.split(",")
news[content[0]] = content[1]
return news
HTML网页端:
<!--实时财经热点-->
<div id="hot" class="bj">
<h4><span><img src="../static/images/热点.png" style="width:30px"></span>实时财经热点</h4>
<ul class="list-group">
{% for text in news %}
<li class="list-group-item"><a href='{{news[text]}}'>{{text}}</a></li>
{% endfor %}
</ul>
</div>
如果能帮到您请务必点击采纳。