python-爬虫篇-爬取百度贴吧,段友之家的图片和视频

在这里插入图片描述


#!/usr/bin/env python
# -*- coding: utf-8 -*-"""
爬取百度贴吧,段友之家的图片和视频
author: cuizy
time:2018-05-19
"""import requests
import bs4
import osdef write_file(file_url, file_type):"""写入文件"""res = requests.get(file_url)res.raise_for_status()# 文件类型分文件夹写入if file_type == 1:file_folder = 'nhdz\\jpg'elif file_type == 2:file_folder = 'nhdz\\mp4'else:file_folder = 'nhdz\\other'folder = os.path.exists(file_folder)# 文件夹不存在,则创建文件夹if not folder:os.makedirs(file_folder)# 打开文件资源,并写入file_name = os.path.basename(file_url)str_index = file_name.find('?')if str_index > 0:file_name = file_name[:str_index]file_path = os.path.join(file_folder, file_name)print('正在写入资源文件:', file_path)image_file = open(file_path, 'wb')for chunk in res.iter_content(100000):image_file.write(chunk)image_file.close()print('写入完成!')def download_file(web_url):"""获取资源的url"""# 下载网页print('正在下载网页: %s...' % web_url)result = requests.get(web_url)soup = bs4.BeautifulSoup(result.text, "html.parser")# 查找图片资源img_list = soup.select('.vpic_wrap img')if img_list == []:print('未发现图片资源!')else:# 找到资源,开始写入for img_info in img_list:file_url = img_info.get('bpic')write_file(file_url, 1)# 查找视频资源video_list = soup.select('.threadlist_video a')if video_list == []:print('未发现视频资源!')else:# 找到资源,开始写入for video_info in video_list:file_url = video_info.get('data-video')write_file(file_url, 2)print('下载资源结束:', web_url)next_link = soup.select('#frs_list_pager .next')if next_link == []:print('下载资料结束!')else:url = next_link[0].get('href')download_file('https:' + url)# 主程序入口
if __name__ == '__main__':web_url = 'https://tieba.baidu.com/f?ie=utf-8&kw=段友之家'download_file(web_url)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/31908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

02 Shell编程之条件语句

1、条件测试操作 要使Shell脚本程序具备一定的智能,面临的第一个问题就是如何区分不同的情况以确定执行何种操作。 例如,当磁盘使用率超过95%时,发送告警信息;当备份目录不存在时,能够自动创建; 当源码编…

深入解析:银行信贷业务办理的核心流程

一、引言 银行信贷管理是一个复杂而严谨的过程,它涉及从贷款申请到贷款归还的每一个环节。通过科学、审慎、合规的信贷管理,银行能够确保资金的安全性,降低风险,并提供高效的信贷服务。本文将详细揭秘银行信贷业务办理的主要业务流…

Qt之文件操作(QFile、QFileInfo、QTemporaryFile)

文章目录 前言QFile如何使用 QFile QFileInfo如何使用 QFileInfo QTemporaryFile如何使用 QTemporaryFile QFile常用函数QFileInfo常用函数QTemporaryFile常用函数总结 前言 在开发 Qt 应用程序时,我们经常需要进行文件操作,如读取文件、写入文件、获取…

超大cvs文件导入MySQL

1 XXX.cvs 太大 使用cvs拆分HugeCSVSplitter_jb51工具进行拆分,Line Count 设置为1,000,000 注意:1 拆分后除第一个子cvs文件含有标题外,其他的子文档都不含有标题行; 2 后一个文档的第一行为前一个文档的…

Automa 插件

插件下载 (Version:1.18.1):https://download.csdn.net/download/code_stream/89467293视频教程1:https://www.bilibili.com/video/BV19VTueJESA/视频教程2:https://www.bilibili.com/list/36751867

小抄 20240618

1 有些人只要看到一件事有难度,内心就会觉得自己做不到,很容易放弃。 有难度和做不到,是两回事。 让你不做任何改变,银行卡凭空多出一百万,这个做不到。 让你定个十年计划,凭个人能力存到一百万&#xf…

MyBatis系列六: 映射关系多对一

动态SQL语句-更复杂的查询业务需求 官方文档基本介绍映射方式配置Mapper.xml的方式-应用实例注解的方式实现-应用实例课后练习 官方文档 文档地址: https://mybatis.org/mybatis-3/zh_CN/sqlmap-xml.html 基本介绍 ●基本介绍 1.项目中多对1的关系是一个基本的映射关系, 也可…

ITSS信息技术服务标准是什么?

ITSS运维模型规定了各级运维服务能力成熟度在管理、人员、过程、技术和资源方面应满足的要求。适用于运维服务供方建立、保持和改进运维服务能力,也适用于评价供方运维服务能力。 运维服务能力成熟度模型按运维服务组织能力建设和管理定义了逐步进化的四个等级&…

领先GPT-4o:Anthropic 推出新一代模型 Claude 3.5 Sonnet|TodayAI

Anthropic,全球领先的人工智能实验室之一,近日发布了其最新的人工智能模型——Claude 3.5 Sonnet。该模型不仅速度更快,成本更低,而且在多个关键任务上的表现超过了其前代模型 Claude 3 Opus。 更强的视觉功能与幽默感 Claude 3…

Python基础教程(二十九):operator模块

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

Upload-Labs-Linux1 使用 一句话木马

解题步骤&#xff1a; 1.新建一个php文件&#xff0c;编写内容&#xff1a; <?php eval($_REQUEST[123]) ?> 2.将编写好的php文件上传&#xff0c;但是发现被阻止&#xff0c;网站只能上传图片文件。 3.解决方法&#xff1a; 将php文件改为图片文件&#xff08;例…

【代码随想录算法训练Day42】LeetCode 1049.最后一块石头的重量II、LeetCode 494.目标和、LeetCode 474.一和零

Day42 动态规划第四天 LeetCode 1049.最后一块石头的重量II dp数组的含义&#xff1a;容量为j的背包能装的物品的最大价值&#xff08;最大重量&#xff09;为dp[j]。 递推公式&#xff1a;dp[j]max(dp[j],dp[j-weight[i]]value[i]) 初始化&#xff1a;dp[0]0,dp[j]0。 遍历顺…

白嫖游戏指南,Epic喜加二:《Freshly Frosted》《Rumble Club》

前言 Epic喜加二&#xff1a;《Freshly Frosted》《Rumble Club》《Freshly Frosted》简介&#xff1a; 《Rumble Club》简介&#xff1a; 前言 接下来有时间会分享一些游戏相关可以白嫖的资源&#xff0c;包括游戏本体、游戏素材资源等等。 有需要的小伙伴可以关注这个专栏&…

IP SSL证书使用率大幅度提升

IP SSL证书的使用人数在增长&#xff0c;这一趋势背后有几个推动因素&#xff1a; 1.网络安全意识提升&#xff1a;随着网络安全事件频发&#xff0c;用户和企业对数据保护的重视程度日益增加。IP SSL证书能为基于IP地址直接访问的网站或服务提供加密&#xff0c;有助于防止数据…

等保测评练习卷5

等级保护初级测评师试题5 姓名&#xff1a; 成绩&#xff1a; 判断题&#xff08;10110分&#xff09; 启用安全增强型Linux的permissive模式&#xff0c;违反SElinux规则的行为只会被记录到日志中 (T ) p106 除管理员用户外&…

没等来百度惊艳的All in AI,却等来了国产之光的盘古大模型 5.0

6月21日&#xff0c;华为开发者大会&#xff08;HDC 2024&#xff09;在广东东莞正式开幕。盘古大模型5.0的更新&#xff0c;也是此次HDC2024的另一项重头戏。在过去的一年中&#xff0c;盘古大模型正在疯狂向各行各业渗透。 此次&#xff0c;华为方面展示了他们在具身智能、医…

七连发吴谨言专访揭秘

七连发&#xff01;吴谨言专访揭秘&#xff0c;薛芳菲魅力再升级在娱乐圈的繁星中&#xff0c;总有那么一些独特的光芒&#xff0c;她们用才华和魅力照亮前行的道路。近日&#xff0c;备受瞩目的“六公主”平台连续发布了七条关于吴谨言的专访&#xff0c;引发了广大网友的热烈…

Java正则魔法:解锁语法深处的奥秘

1. 引言 深入理解Java正则表达式的语法是提升编程效率和文本处理能力的关键。下面将详细探讨Java正则表达式的语法,并揭示其背后的奥秘。 2. 元字符与特殊字符 .:匹配除了换行符之外的任何单个字符。\d:匹配任何数字,等价于[0-9]。\D:匹配任何非数字字符。\w:匹配任何字…

Java学习笔记(一)Java内容介绍、程序举例、DOS命令、Java跨平台特性的本质、课后练习

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍Java内容介绍、程序举例、DOS命令、Java跨平台特性的本质还有几道课后练习详细介绍以及部分理论知识 🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍉博主收将持续更新学习记录获,友友们有任何问题可以在评论区留言 …

【C++】平衡二叉树(AVL树)的实现

目录 一、AVL树的概念二、AVL树的实现1、AVL树的定义2. 平衡二叉树的插入2.1 按照二叉排序树的方式插入并更新平衡因子2.2 AVL树的旋转2.2.1 新节点插入较高左子树的左侧&#xff08;LL平衡旋转&#xff09;2.2.2 新节点插入较高右子树的右侧&#xff08;RR平衡旋转&#xff09…