12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #!/usr/bin/python3
- from pytrends.request import TrendReq
- import pytrends
- import sys
- from datetime import datetime, timezone, timedelta
- import traceback
- import requests
- from bs4 import BeautifulSoup
- import re
- #import farmlib
- import pandas as pd
- import random
- import os
- import dataset
- import json
- from gn3 import GoogleNews3
- googlenews = GoogleNews3(lang="zh-tw", period="7d",
- encode="utf-8", region="tw")
- # googlenews.search('蔡英文')
- """ result = googlenews.gettext()
- for n in range(len(result)):
- print(n)
- print(result[n])
- result = googlenews.get_links()
- for n in range(len(result)):
- print(n)
- print(result[n]) """
- """ googlenews.get_news('蔡英文')
- trdresult = googlenews.result()
- #print(trdresult[0]['title'])
- for article in trdresult:
- print(article['title']) """
- db = dataset.connect(
- 'mysql://choozmo:pAssw0rd@db.ptt.cx:3306/yodb?charset=utf8mb4')
- cursor = db.query(
- '(SELECT * FROM trending_searches ORDER BY ts_date DESC LIMIT 20) ORDER BY ts_date')
- """ for c in cursor:
- print(c['ts_word']) """
- tz = timezone(timedelta(hours=+8))
- #print(datetime.now(tz).isoformat(timespec="seconds"))
- # print(str(datetime.date.today()).replace('-',''))
- trpath = os.getcwd() + '/../webSite/content/trends/'
- trdpath = os.getcwd() + '/../webSite/content/trenddetail/'
- with open(trpath + str(datetime.today().date()).replace('-', '')+'.md', 'w', encoding='UTF-8') as f:
- f.write('+++\n')
- f.write('title = "趨勢日報"\n' +
- 'date = "' + str(datetime.now(tz).isoformat(timespec="seconds")) + '"\n' +
- 'tags = ["daily-trend-watch"]\n' +
- 'categories = ["trends"]\n' +
- 'layout = "trends"\n' +
- 'banner = "https://i.imgur.com/jdQb3ZH.jpg"\n')
- for c in cursor:
- f.write('no' + str(c['ts_rank']).zfill(2) +
- ' = "' + c['ts_word'] + '"\n')
- googlenews.clear()
- googlenews.get_news(c['ts_word'])
- trdresult = googlenews.result()
- with open(trdpath + str(datetime.today().date()).replace('-', '')+'_' + str(c['ts_rank']).zfill(2)+'.md', 'w', encoding='UTF-8') as fd:
- fd.write('+++\n')
- fd.write('title = "趨勢日報"\n' +
- 'date = "' + str(datetime.now(tz).isoformat(timespec="seconds")) + '"\n' +
- 'layout = "trends"\n' +
- 'banner = "https://i.imgur.com/jdQb3ZH.jpg"\n')
- rcount = 1
- print(c['ts_word'])
- for article in trdresult:
- fd.write('title' + str(rcount)+' = "' + str(article['title']).replace('"',"'") + '"\n' +
- 'desc' + str(rcount)+' = "' + str(article['desc']) + '"\n' +
- 'date' + str(rcount)+' = "' + str(article['date']) + '"\n' +
- 'datetime' + str(rcount)+' = "' + str(article['datetime']) + '"\n' +
- 'link' + str(rcount)+' = "' + str(article['link']) + '"\n' +
- 'img' + str(rcount)+' = "' + str(article['img']) + '"\n' +
- 'media' + str(rcount)+' = "' + str(article['media']) + '"\n' +
- 'site' + str(rcount)+' = "' + str(article['site']) + '"\n')
- # print(article)
- rcount += 1
- fd.write('+++\n')
- f.write('+++\n')
|