Python3网络爬虫——(1)利用urllib进行简单的网页抓取

简介: 利用urllib进行简单的网页抓取urllib是Python提供的用于操作URL的模块l、快速使用urllib爬取网页# -*- coding: UTF-8 -*-from urllib import reque...
利用urllib进行简单的网页抓取

urllib是Python提供的用于操作URL的模块
l、快速使用urllib爬取网页
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":
      file = request.urlopen("https://blog.csdn.net/asialee_bird")#使用request.urlopen()打开和读取url信息
      html = file.read() #读取文件的全部内容,read会把读取到的内容赋给一个字符串变量
      #html=file.readlines() #读取文件的全部内容,readlines会把读取到的内容赋给一个列表变量
      #html=file.readline()  #读取文件的一行内容
      html = html.decode("utf-8")  #decode()命令将网页的信息进行解码
      print(html)
2、获取网页的编码方式
# -*- coding: UTF-8 -*-
from urllib import request
import chardet               #通过第三方模块获得网页的编码方式(需要pip3安装)
if __name__ == "__main__":
    file = request.urlopen("https://blog.csdn.net/asialee_bird")
    html = file.read() 
    charset=chardet.detect(html)  #获取该网页的编码方式
    print(charset) 

结果:


3、将爬取到的网页以网页的形式保存到本地
方法一:
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":
       file = request.urlopen("https://blog.csdn.net/asialee_bird")
       html = file.read() 
       file_html=open('test.html','wb')
       file_html.write(html)
       file_html.close()
结果:


方法二:
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":    
   file=request.urlretrieve('https://blog.csdn.net/asialee_bird',filename='test2.html')
   request.urlcleanup()  #清除缓存信息

4、urlopen的url参数信息
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":
    # url可以是一个字符串,也可以是一个Request对象
    req = request.Request("https://blog.csdn.net/asialee_bird")
    response = request.urlopen(req)
    get_url=response.geturl()   #geturl()返回的是一个url的字符串
    in_fo=response.info() #info()返回的是一些meta标记的元信息,包括一些服务器的信息
    get_code=response.getcode() #getcode()返回的是HTTP的状态码,如果返回200表示请求成功
    #分别对获取的信息进行打印
    print("geturl打印信息:%s"%get_url)
    print('**********************************************')
    print("info打印信息:%s"%in_fo)
    print('**********************************************')
    print("getcode打印信息:%s"%get_code)
输出结果:









相关文章
|
14天前
|
数据采集 存储 XML
Python爬虫定义入门知识
Python爬虫是用于自动化抓取互联网数据的程序。其基本概念包括爬虫、请求、响应和解析。常用库有Requests、BeautifulSoup、Scrapy和Selenium。工作流程包括发送请求、接收响应、解析数据和存储数据。注意事项包括遵守Robots协议、避免过度请求、处理异常和确保数据合法性。Python爬虫强大而灵活,但使用时需遵守法律法规。
|
15天前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
16天前
|
数据采集 Web App开发 监控
高效爬取B站评论:Python爬虫的最佳实践
高效爬取B站评论:Python爬虫的最佳实践
|
16天前
|
Python
Python中的异步编程:使用asyncio和aiohttp实现高效网络请求
【10月更文挑战第34天】在Python的世界里,异步编程是提高效率的利器。本文将带你了解如何使用asyncio和aiohttp库来编写高效的网络请求代码。我们将通过一个简单的示例来展示如何利用这些工具来并发地处理多个网络请求,从而提高程序的整体性能。准备好让你的Python代码飞起来吧!
39 2
|
1天前
|
数据采集 XML 存储
构建高效的Python网络爬虫:从入门到实践
本文旨在通过深入浅出的方式,引导读者从零开始构建一个高效的Python网络爬虫。我们将探索爬虫的基本原理、核心组件以及如何利用Python的强大库进行数据抓取和处理。文章不仅提供理论指导,还结合实战案例,让读者能够快速掌握爬虫技术,并应用于实际项目中。无论你是编程新手还是有一定基础的开发者,都能在这篇文章中找到有价值的内容。
|
12天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
43 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
16天前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
39 3
|
17天前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
21天前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
21天前
|
数据采集 存储 XML
Python实现网络爬虫自动化:从基础到实践
本文将介绍如何使用Python编写网络爬虫,从最基础的请求与解析,到自动化爬取并处理复杂数据。我们将通过实例展示如何抓取网页内容、解析数据、处理图片文件等常用爬虫任务。
119 1
下一篇
无影云桌面