博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单网页爬虫
阅读量:4313 次
发布时间:2019-06-06

本文共 2658 字,大约阅读时间需要 8 分钟。

目录

爬虫

安装requests模块:pip install requests

1.文字爬虫

import re           # 导入re模块import requests     # 导入request模块response = requests.get('https://ishuo.cn/')  # 获取网页内容源代码data = response.text     # 将网页内容源代码存放在文本格式记录data文件中result_list = re.findall('
(.*?)
',data) # 找到要爬取的内容(.*?)前后的共同点写入列表'''
与人a1人间的信任,就像是纸片,一旦破损,就不会再回到原来的样子。
(.*?)
一年奔波,尘缘遇了谁;一句珍重,天涯别了谁;一点灵犀,凭栏忆了.
(.*?)
'''for result in result_list: print(result) # 分别读取

2.图片爬虫

import reimport requestscount= 0for i in range(2,4):    # 'http://pic.netbian.com/index_{i}.html'跳转下一页继续爬    respone = requests.get(f'http://pic.netbian.com/index_{i}.html') #获取网址源代码内容    data = respone.text #文本形式记录    # print(data)    result_list = re.findall('src="(.*?)"',data) #从data中获取所要爬的共同的东西(图片)    for result in result_list:        if result.endswith('jpg'):   # 判断挑选需要的图片的格式              result = f'http://pic.netbian.com{result}' # 图片的网址              # print(result)              img_respone = requests.get(result)  # 获取图片的内容(二进制记录的内容)              img_name = result.split('/')[-1] # 每次循环分别记录图片名称              img_data = img_respone.content  # 以字符形式记录图片              # print(img_data)              with open(img_name,'wb') as f:  # 创建名字为img_name的图片并打开                  f.write(img_data)  # 以字符形式写入图片                  f.flush()              count+=1              print(f'爬取了{count}张图片')

3.视频爬虫

import reimport requestsresponse = requests.get('https://www.ku6.com/index') # 获取网址代码data = response.text  # 文本形式记录网页代码count = 0# print(data)result_list = re.findall('',data) # 找到视频网址的共同地方for result in result_list:    # print(result)    if result.startswith('/video'):        # print(result)        result = f'https://www.ku6.com{result}' # 补满视频网址        # print(result)        detail_response = requests.get(result)   # 获取单个视频网址代码        detail_data = detail_response.text      # 文本形式记录单个视频网页代码        # src="https://rbv01.ku6.com/wifi/o_1dab1luo5oao1jnk1bpnk321hevckvs" >< / video >(????)# flvURL: "https://rbv01.ku6.com/wifi/o_1dab1luo5oao1jnk1bpnk321hevckvs"# flvURL: "https://rbv01.ku6.com/wifi/o_1dab1luo5udcici1r2vefj1jksbkvs"        video_url = re.findall('flvURL: "(.*?)"',detail_data) # 找到单个视频网址代码        # print(video_url)        video_response = requests.get(video_url[0]) # video_url是包含一个元素的列表        video_data = video_response.content    # 以二进制保存视频        video_name = f"{video_url[0].split('/')[-1]}.mp4"  # 编辑视频名字        with open(video_name, 'wb') as fw:    # 打开文件            fw.write(video_data)          # 写入视频            fw.flush()        count += 1        print(f'爬取了{count}个视频')

转载于:https://www.cnblogs.com/yellowcloud/p/10858775.html

你可能感兴趣的文章
我的四则运算
查看>>
php上传文件如何保证上传文件不被改变或者乱码
查看>>
目录遍历代码
查看>>
iOS MD5加密实现方法
查看>>
页面中调用系统常用的对话框需要用到的classid
查看>>
cygwin下的目录软连接
查看>>
eclipse控制台不显示输出的解决办法
查看>>
Java中的TCP/UDP网络通信编程
查看>>
cordova学习:事件Events
查看>>
lincode167 - Add Two Numbers - easy
查看>>
大叔手记(3):Windows Silverlight/Phone7/Mango开发学习系列教程
查看>>
在Delphi中使用C++对象(转)
查看>>
mac 特殊符号的操作
查看>>
C++原创应用类库和工具类库
查看>>
FLOW CONTROL
查看>>
Maze迷宫问题(求最优解)
查看>>
mvc2 使用jquery.ajax发送数据以及显示数据
查看>>
【长期维护】C++休闲(修仙)躲方块小游戏
查看>>
Qt入门(15)——使用窗口部件
查看>>
Qt入门(16)——组装窗口部件
查看>>