fetch_content.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from bs4 import BeautifulSoup
  2. import requests
  3. import html2text
  4. import jieba
  5. import dataset
  6. jieba.load_userdict("c:/tmp/userdict.txt")
  7. stopwords=', 的/-。*.|)(][_!、」「::|)』『(xmlimgursvgbase64jpgmenuMenu有了也gif%stylespnghttpsimagesicogovRSSscript'
  8. db = dataset.connect('sqlite:///c:/tmp/jieba.db')
  9. db.query('delete from tmp')
  10. #db.query('drop table tmp')
  11. #urls=['https://www.dcard.tw/f/house/p/232318765?cid=BBDFB720-BAE4-406E-8449-D2F12EA11241']
  12. urls=['https://www.gold-kirin.com.tw/about']
  13. #db = dataset.connect('sqlite:///:memory:')
  14. table=db['tmp']
  15. # request web page
  16. #resp = requests.get("https://casino543.com/2021%E5%B9%B4%E5%8D%81%E5%A4%A7%E7%B7%9A%E4%B8%8A%E5%A8%9B%E6%A8%82%E5%9F%8E%E6%8E%92%E5%90%8D%E6%8E%A8%E8%96%A6-%E5%A8%9B%E6%A8%82%E5%9F%8E%E5%89%8D100%E5%90%8D%E5%A8%9B%E6%A8%82%E5%9F%8E%E9%82%84/")
  17. #resp = requests.get("https://mort.moi.gov.tw/frontsite/cms/newsAction.do?method=viewContentDetail&iscancel=true&contentId=MjU3NA==")
  18. #resp = requests.get("https://www.memory.com.tw/funeral_ceremony-in.php?i=5&c=3")
  19. for url in urls:
  20. resp = requests.get(url)
  21. html = resp.content
  22. html=html.decode('utf-8')
  23. h = html2text.HTML2Text()
  24. h.ignore_links = True
  25. docs=h.handle(html )
  26. words = jieba.cut(docs, cut_all=False)
  27. for word in words:
  28. if word not in stopwords:
  29. table.insert({'word':word})
  30. cursor=db.query('select word,count(word) as cnt from tmp group by word having ( count(word) >1 or length(word)>2) order by count(word) desc')
  31. for c in cursor:
  32. print(c['word'])
  33. print(c['cnt'])