python爬虫今日热榜数据到txt文件的源码


Posted in Python onFebruary 23, 2021

今日热榜:https://tophub.today/

python爬虫今日热榜数据到txt文件的源码

爬取数据及保存格式:

python爬虫今日热榜数据到txt文件的源码

爬取后保存为.txt文件:

python爬虫今日热榜数据到txt文件的源码

部分内容:

python爬虫今日热榜数据到txt文件的源码
python爬虫今日热榜数据到txt文件的源码

源码及注释:

import requests
from bs4 import BeautifulSoup

def download_page(url):
  headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36"}
  try:
    r = requests.get(url,timeout = 30,headers=headers)
    return r.text
  except:
    return "please inspect your url or setup"


def get_content(html,tag):
  output = """  排名:{}\n  标题:{} \n  热度:{}\n  链接:{}\n  ------------\n"""
  output2 = """平台:{}  榜单类型:{}  最近更新:{}\n------------\n"""
  num=[]
  title=[]
  hot=[]
  href=[]
  soup = BeautifulSoup(html, 'html.parser')
  con = soup.find('div',attrs={'class':'bc-cc'})
  con_list = con.find_all('div', class_="cc-cd")
  for i in con_list: 
    author = i.find('div', class_='cc-cd-lb').get_text() # 获取平台名字
    time = i.find('div', class_='i-h').get_text() # 获取最近更新
    link = i.find('div', class_='cc-cd-cb-l').find_all('a') # 获取所有链接 
    gender = i.find('span', class_='cc-cd-sb-st').get_text() # 获取类型 
    save_txt(tag,output2.format(author, gender,time))
    for k in link:
      href.append(k['href'])
      num.append(k.find('span', class_='s').get_text())
      title.append(str(k.find('span', class_='t').get_text()))
      hot.append(str(k.find('span', class_='e').get_text()))
    for h in range(len(num)): 
      save_txt(tag,output.format(num[h], title[h], hot[h], href[h]))


def save_txt(tag,*args):
  for i in args:
    with open(tag+'.txt', 'a', encoding='utf-8') as f:
      f.write(i)


def main():
  #   综合  科技  娱乐  社区    购物   财经
  page=['news','tech','ent','community','shopping','finance']
  for tag in page:
    url = 'https://tophub.today/c/{}'.format(tag)
    html = download_page(url)
    get_content(html,tag)

if __name__ == '__main__':
  main()

到此这篇关于python爬虫今日热榜数据到txt文件的源码的文章就介绍到这了,更多相关python爬虫今日热榜数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python3基础之基本运算符概述
Aug 13 Python
Python命令行参数解析模块getopt使用实例
Apr 13 Python
Python单元测试框架unittest使用方法讲解
Apr 13 Python
在Python中使用lambda高效操作列表的教程
Apr 24 Python
Python运行报错UnicodeDecodeError的解决方法
Jun 07 Python
Django框架的使用教程路由请求响应的方法
Jul 03 Python
对Python3.6 IDLE常用快捷键介绍
Jul 16 Python
Django使用消息提示简单的弹出个对话框实例
Nov 15 Python
python logging.info在终端没输出的解决
May 12 Python
Django使用Profile扩展User模块方式
May 14 Python
win10安装python3.6的常见问题
Jul 01 Python
详解Python中list[::-1]的几种用法
Nov 16 Python
如何用Python和JS实现的Web SSH工具
Feb 23 #Python
Python 带星号(* 或 **)的函数参数详解
Feb 23 #Python
python解决OpenCV在读取显示图片的时候闪退的问题
Feb 23 #Python
关于探究python中sys.argv时遇到的问题详解
Feb 23 #Python
python链表类中获取元素实例方法
Feb 23 #Python
Python之多进程与多线程的使用
Feb 23 #Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 #Python
You might like
一个PHP数组应该有多大的分析
2009/07/30 PHP
PHP中基本符号及使用方法
2010/03/23 PHP
PHP分页效率终结版(推荐)
2013/07/01 PHP
php+ajax实现商品对比功能示例
2019/04/13 PHP
JavaScript中的细节分析
2012/06/30 Javascript
使用js修改客户端注册表的方法
2013/08/09 Javascript
JavaScript调用客户端的可执行文件(示例代码)
2013/11/28 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
最常见的左侧分类菜单栏jQuery实现代码
2016/11/28 Javascript
微信小程序 空白页重定向解决办法
2017/06/27 Javascript
微信小程序倒计时功能实现代码
2017/11/09 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
vue-cli脚手架搭建的项目去除eslint验证的方法
2018/09/29 Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
2020/09/12 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
[38:39]KG vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
[32:36]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第二场 12.12
2020/12/16 DOTA
在Django中限制已登录用户的访问的方法
2015/07/23 Python
基于Pytorch SSD模型分析
2020/02/18 Python
纯css3制作网站后台管理面板
2014/12/30 HTML / CSS
基于 HTML5 WebGL 实现的医疗物流系统
2019/10/08 HTML / CSS
有影响力的人、名人和艺术家的官方商品:Represent
2019/11/26 全球购物
工作分析计划书
2014/04/30 职场文书
管理标语大全
2014/06/24 职场文书
教师自查自纠材料
2014/10/14 职场文书
夫妻双方自愿离婚协议书怎么写
2014/12/01 职场文书
2015年优质护理服务工作总结
2015/04/08 职场文书
好员工观后感
2015/06/17 职场文书
运动会5000米加油稿
2015/07/21 职场文书
css实现文章分割线样式的多种方法总结
2021/04/21 HTML / CSS
Oracle 死锁的检测查询及处理
2021/09/25 Oracle
关于JavaScript 中 if包含逗号表达式
2021/11/27 Javascript
vue项目中的支付功能实现(微信支付和支付宝支付)
2022/02/18 Vue.js
Redis 限流器
2022/05/15 Redis