爬虫:Python爬虫学习笔记之Urllib库
发布日期:2021-06-30 15:42:06
浏览次数:4
分类:技术文章
本文共 1772 字,大约阅读时间需要 5 分钟。
本文是我在使用网易云课堂学习日月光华老师讲的“Python爬虫零基础入门到进阶实战”课程所做的笔记,如果大家觉得不错,可以去看一下老师的视频课,讲的还是很棒的。
Urllib库的四个模块
1.urllib.request打开和读取URL
2.urllib.error包含Urllib.request各种错误的模块 3.urllib.parse解析URL 4.urllib.robotparse解析网站robots.txt文件Urllib库的使用
发送GET请求
# 引入urlopen库 用于打开网页from urllib.request import urlopen# 获取内容html = urlopen('https://www.douban.com')# 读取返回的内容response = html.read()# 输出(豆瓣首页二进制源代码)print(response)# 对二进制内容进行解码# 输出(豆瓣首页文本代码)print(response.decode('utf-8'))
实现效果
传递URL参数
# 引入requests请求模块import urllib.request# 引入网址解析模块import urllib.parsepayload = { 'q':'python','cat':'1001'}requst_url = 'https://www.douban.com/search'# 对要添加的URL参数进行编码payload_encode = urllib.parse.urlencode(payload)# 构造实际请求的URLurl = requst_url + '?' + payload_encode# 请求直接返回的是二进制response = urllib.request.urlopen(url)# 解码并输出print(response.read().decode('utf-8'))
实现效果
模拟浏览器发送GET请求
# 引入requests请求模块import urllib.request# 引入网址解析模块import urllib.parseurl = 'https://www.douban.com'headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36'}# 构造请求 在url中添加User-Agentrequest = urllib.request.Request(url, headers=headers)response = urllib.request.urlopen(request).read()
POST发送一个请求
# 可以在下面直接调用request和parsefrom urllib import request, parsepost_data = parse.urlencode([('key1', 'v1'), ('k2', 'v2')])# 构造请求url,构造一个Request对象url = request.Request('http://httpbin.org/post')# 添加headersurl.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36')response = request.urlopen(url, data=post_data.encode('utf-8')).read()print(response)
urljoin函数
# 使用urljoin拼接正确URLfrom urllib.parse import urljoinurljoin('https://accounts.douban.com','/passport/login')
转载地址:https://kaisarh.blog.csdn.net/article/details/102925191 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年04月19日 10时11分27秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
查询亿级数据毫秒级返回!Elasticsearch 是如何做到的?
2019-05-01
FastAPI 构建 API 服务,究竟有多快?
2019-05-01
为什么Quora选择用Python语言?
2019-05-01
一劳永逸学编程的方法
2019-05-01
代码整洁之道-编写 Pythonic 代码
2019-05-01
如何科学的刷 Leetcode
2019-05-01
树莓派程序开机自启动
2019-05-01
连锁门店无线通信方案
2019-05-01
配置Lotus Domino集群视频详解
2019-05-01
通过PXE安装Linux实况
2019-05-01
轻松掌握Ubuntu Linux的3D桌面快捷键使用
2019-05-01
OSSIM(开源安全信息管理系统)在企业网络管理中的应用
2019-05-01
如何搭建Eclipse +Apache Tomcat配置Java开发环境
2019-05-01
开源计算机集群监控Ganglia应用视频
2019-05-01
Linux软件万花筒
2019-05-01
vSphere5安装配置视频教程
2019-05-01
《Linux企业应用案例精解》一书已由清华大学出版社出版
2019-05-01
安装配置FreeBSD9全过程体验
2019-05-01
全球开源软件发展趋势分析
2019-05-01