python 爬虫 urllib模块介绍

python 爬虫 urllib模块介绍,第1张

概述    一.urllib库   概念:urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在Python3中的为urllib.request和urllib.parse,在Python2中是urllib和urllib2。      使用流程: 指定url 针对指定的url发起请求 (基于urllib的request子模块发起请求) 获取服 @H_404_4@

 

 

一.urllib库

  概念:urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在python3中的为urllib.request和urllib.parse,在Python2中是urllib和urllib2。

     使用流程:

指定url 针对指定的url发起请求 (基于urllib的request子模块发起请求) 获取服务器响应回来的页面数据 持久化存储 (可以把页面数据存到数据库,或者存到本地磁盘)

 

1.第一个简单的爬虫程序:爬取搜狗首页的页面数据

import urllib.request# 1.指定urlurl = https://www.sogou.com/‘‘‘2.发起请求:使用urlopen函数对指定的url发起请求,该函数返回一个响应对象,urlopen代表打开url‘‘‘response = urllib.request.urlopen(url=url)# 3.获取响应对象中的页面数据:read函数可以获取响应对象中存储的页面数据(byte类型的数据值)page_text = response.read()# 4.持久化存储:将爬取的页面数据写入文件进行保存with open("sougou.HTML","wb") as f:    f.write(page_text)    print("写入数据成功")    f.close()
@H_404_4@

 生成一个HTML文件,把爬取数据写入到文件里

 

urlib模块urlopn方法说明:

urlopen函数原型:    urllib.request.urlopen(url,data=None,timeout=<object object at 0x10af327d0>,*,cafile=None,capath=None,cadefault=False,context=None)在上述案例中我们只使用了该函数中的第一个参数url。在日常开发中,我们能用的只有url和data这两个参数。url参数:指定向哪个url发起请求data参数:可以将post请求中携带的参数封装成字典的形式传递给该参数(暂时不需要理解,后期会讲)urlopen函数返回的响应对象,相关函数调用介绍:response.headers():获取响应头信息response.getcode():获取响应状态码response.geturl():获取请求的urlresponse.read():获取响应中的数据值(字节类型)
@H_404_4@

 

 

  2.二进制数据的爬取:爬取网络上的某张图片数据,且存储到文件

 

import urllib.request# 1.指定urlurl = https://pic.qiushibaike.com/system/pictures/12112/121121212/medium/ZOAND29U4NKNEWEF.jpg‘‘‘2.发起请求:使用urlopen函数对指定的url发起请求,该函数返回一个响应对象,urlopen代表打开url‘‘‘response = urllib.request.urlopen(url=url)# 3.获取响应对象中的图片二进制类型的数据img_data = response.read()# 4.持久化存储:将爬取的图片写入本地进行保存with open(./tupian.png,wb) as fp:    fp.write(img_data)    fp.close()
@H_404_4@

生成图片文件

@H_404_4@ @H_404_4@ @H_404_4@ 总结

以上是内存溢出为你收集整理的python 爬虫 urllib模块介绍全部内容,希望文章能够帮你解决python 爬虫 urllib模块介绍所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1194103.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存