Urllib库的基本用法

Urllib库的基本用法

1、什么是url?

统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。

基本URL包含模式(或称协议)、服务器名称(或IP地址)、路径和文件名,如“协议://授权/路径?查询”。完整的、带有授权部分的普通统一资源标志符语法看上去如下:协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志

2、什么是Urllib库?

Urllib是python内置的处理URL的库,
包括以下模块
urllib.request 打开、读URLs
urllib.error 包含了request出现的异常
urllib.parse url解析模块
urllib.robotparser robots.txt解析模块(spider在访问一个网站时,会首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件。您可以在您的网站中创建一个纯文本文件robots.txt,在文件中声明该网站中不想被robot访问的部分或者指定搜索引擎只收录特定的部分)

 

3、实例

(1)读一个网页

import urllib.request
with urllib.request.urlopen('http://www.baidu.com') as f:
    print(f.read(20).decode('utf8'))

  其中,urlopen返回的是一个字节类型的对象,这是由于urlopen不知道从服务器上读的数据该如何解码,需要我们自己对字符串解码。

如上,可以打开百度的界面,

<span>Urllib库的基本用法</span>

可以看到,此页面用utf-8编码。

 

当然,你也可以把代码改为:

import urllib.request
req = urllib.request.Request(url = 'http://www.baidu.com')
with urllib.request.urlopen(req) as f:
    print(f.read(20).decode('utf8'))

  访问请求放置在Request类中,该类包含一些属性,可以传递数据等,此处不过于深究。

(2)登陆动作(使用基础的HTTP身份验证)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119475.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 免费PDF翻译,不限页数,不限字数,保留排版

    免费PDF翻译,不限页数,不限字数,保留排版可以试试这个网站https://superdoctranslator.com/,使用百度的引擎,排版全部保留,不仅支持word和pptx,还支持图片PDF和扫描件,一个月白嫖少说也得600页PDF,用标准版appid连页数都不限制了,主要是排版效果几乎100%还原。…

    2022年6月3日
    67
  • ctpn详解

    ctpn详解一.概述对于复杂场景的文字识别,首先要定位文字的位置,即文字检测。这一直是一个研究热点。文本检测可以看成特殊的目标检测,但它有别于通用目标检测.在通用目标检测中,每个目标都有定义好的边界框,检测出的bbox与当前目标的groundtruth重叠率大于0.5就表示该检测结果正确.文本检测中正确检出需要覆盖整个文本长度,且评判的标准不同于通用目标检测,具体的评判方法参见(ICDAR2017…

    2025年8月21日
    3
  • Struts2漏洞分析「建议收藏」

    Struts2漏洞分析「建议收藏」当在浏览器输入如下地址时:      http://www.xxxx.com/aaa.action?(‘\u0023_memberAccess[\’allowStaticMethodAccess\’]’)(meh)=true&(aaa)((‘\u0023context[\’xwork.MethodAccessor.denyMethodExecution\’]\u003d\u0023foo’)

    2022年7月19日
    19
  • 21.shell语言之if条件判断语句

    21.shell语言之if条件判断语句shell的if语法和C语言等高级语言非常相似,唯一需要注意的地方就是shell的if语句对空格方面的要求比较严格(其实shell对所有语法的空格使用都比较严格)。注意:1、[]表示条件测试。注意这里的空格很重要。要注意在’[‘后面和’]’前面都必须要有空格2、在shell中,then和fi是分开的语句。如果要在同一行里面输入,则需要用分号将他们隔开。3、注意if判断中对于变量的处理,需要加引号,以免一些不必要的错误。

    2022年7月11日
    20
  • 什么是跨域?如何解决跨域问题?

    什么是跨域?如何解决跨域问题?什么是跨域?浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域域名:主域名不同http://www.baidu.com/index.html–&amp;gt;http://www.sina.com/test.js子域名不同http://www.666.baidu.com/index.html–&amp;gt;http://www.555.baidu.co…

    2022年6月14日
    31
  • pycharm远程部署_pycharm部署服务器

    pycharm远程部署_pycharm部署服务器pycharm连接远程服务器1.pycharm中打开tools->deployment->configuration…2.填写下图信息3.填写mappings信息4.add一个远程python解释器经过以上步骤,远程解释器就配置好了使用1.上传文件到服务器一般解释器配置好后,本地项目会自动上传到服务器上,当上传完成就可以通过使用服务器环境在本地运行程序了…

    2022年8月27日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号