Python爬虫--Urllib基础

1. urlretrieve

Urllib 库也是类似 request 库,用来解析html的

首先讲 urlretrieve 子模块

这个模块的作用是将网页下载到本地

语法: urlretrieve(网址,本地地址)

例如:

这样就可以了,他会将百度网页下载到本地D盘下,

不过图片那些可能下载不到,因为他做了防盗取


import urllib.requesturl = 'https://www.baidu.com/'urllib.request.urlretrieve(url,'D:/')

2. urlcleanup

urlcleanup 用来清除爬虫产生的一些缓存及其他一些杂七杂八的东西

他通常在请求网页的时候使用,

运行时不会有任何提示

例:


import urllib.requesturl = 'https://www.baidu.com/'urllib.request.urlretrieve(url,'D:/')urllib.request.urlcleanup()

3. info()

info() 用来获取网页的简介信息

例:


import urllib.requesturl = 'https://www.baidu.com/'data = urllib.request.urlopen(url)urllib.request.urlcleanup()print(data.info())

效果图:

images


4. getcode()

getcode() 获取状态码


import urllib.requesturl = 'https://www.baidu.com/'data = urllib.request.urlopen(url)urllib.request.urlcleanup()print(data.getcode())>>> 输出 200

5. geturl()

geturl() 获取当前访问网页的url地址

例:


import urllib.requesturl = 'https://www.baidu.com/'data = urllib.request.urlopen(url)urllib.request.urlcleanup()print(data.geturl())>>> 输出 https://www.baidu.com/

6. 超时设置

在我们访问网页的时候,可能会因为各种原因导致访问不成功,

这个原因可能是对方服务器反应慢,或者网速慢之类的问题,

那么我们就需要给代码更多的判断时间,

如果超过这个时间,那么我们就可以认为网页无法访问。

这里我们使用到 timeout() 函数来设置请求时间

它通常会配合 try except 函数一起使用

例:

设置超时时间为 5秒

len() 函数为获取返回长度,

decode() 是解码的意思,有些时候因为编码不同,不解码的话会出错,

第二个参数 ignore ,表示解码失败也强行解码


import urllib.requesttry:url = 'https://www.baidu.com/'data = urllib.request.urlopen(url,timeout=5)urllib.request.urlcleanup() # 清除缓存print(len(data.read().decode("utf-8","ignore")))except Exception as error:print("无法访问 " + str(error))>>> 输出 227

Urllib基础,有些时候没有 request模块方便

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3015430.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

安卓自动化脚本制作流程详解!

在移动应用日益普及的今天,安卓自动化脚本制作成为了开发者提高工作效率、减少重复劳动的重要手段,本文将详细介绍安卓自动化脚本的制作流程,并通过五段源代码的实例,帮助读者更好地理解和掌握这一过程。 一、安卓自动化脚本制作…

光电探测器性能指标测试

光电探测器的三个核心指标: 带宽,转换增益,噪声(信噪比,NEP,噪声密度) 测试环境:可调谐激光器(CW LASER),强度调制器(AM),信号发生器(AWG),可调衰…

EtherCAT开发_4_分布时钟知识点摘抄笔记1

分布时钟 (DC,Distributed Cl ock) 可以使所有EtherCAT设备使用相同的系统时间,从而控制各设备任务的同步执行。从站设备可以根据同步的系统时间产生同步信号,用于中断控制或触发数字量输入输出。支持分布式时钟的从站称为 DC 从站。分布时钟…

小红书餐饮推广怎么合作?纯干货

小红书作为国内领先的生活方式分享平台,其用户群体主要集中在一二线城市,年龄分布在18-35岁之间,其中女性用户占比高达80%。这部分用户具有较高的消费能力、审美追求和品质生活需求,对美食有着极高的兴趣和消费意愿,为…

快速修复vcruntime140_1.dll丢失问题,多个亲测有效的方法分享

vcruntime140_1.dll 是Microsoft Visual C Redistributable包中的一个关键动态链接库(Dynamic Link Library)文件,它对于运行基于Visual C开发的应用程序至关重要。此文件属于运行时组件,为应用程序提供必要的运行时支持&#xff…

Java解决垂直鉴权问题(对垂直权限进行校验)

Java解决垂直鉴权问题(对垂直权限进行校验) 文章目录 Java解决垂直鉴权问题(对垂直权限进行校验)前言一、垂直鉴权是什么?二、实现过程1.新建接口权限菜单映射表2.项目初始化时加载接口菜单映射关系3.自定义过滤器拦截…

进程软中断通信实验

【预备知识】 进程软中断通信涉及的系统调用描述如下。 1.kill() 进程用kill()向一个进程或一组进程发送一个信号。系统调用格式为int kill(pid,sig)。其中,pid是一个或一组进程的标识符,sig是要发送的软中断信号。信号的发送分如下三种情况。…

视频剪辑神器:批量高效处理,轻松锐化视频让影片焕然一新!

视频已经成为我们记录生活、分享故事、展示才华的重要形式。然而,面对大量的视频文件,如何批量高效剪辑并提升视频质量,成为了许多人的难题。现在,我们为您带来一款视频剪辑神器,让您轻松处理视频,让您的影…

Linux Systemd基础教程

一、什么是systemd? systemd是Linux系统的一套基本构建模块。它提供了一个系统和服务管理器,作为PID 1运行并启动系统的其余部分。 systemd提供积极的并行化功能,使用套接字和D-Bus激活来启动服务,提供按需启动守护进程&#xf…

shell常用文件处理命令

1. 解压 1.1 tar 和 gz 文件 如果你有一个 .tar 文件,你可以使用以下命令来解压: tar -xvf your_file.tar在这个命令中,-x 表示解压缩,-v 表示详细输出(可选),-f 后面跟着要解压的文件名。 如果你的 .tar 文件同时被 gzip 压缩了(即 .tar.gz 文件),你可以使用以下…

开发组合php+mysql 人才招聘小程序源码搭建 招聘平台系统源码+详细图文搭建部署教程

随着互联网的快速发展,传统的招聘方式已经不能满足企业和求职者的需求。为了提高招聘效率,降低招聘成本,越来越多的人开始关注人才招聘小程序、在线招聘平台。分享一个人才招聘小程序源码及搭建,让招聘更加高效便捷。系统是运营级…

工厂模式应用实例

引言 设计模式概念 设计模式(Design Pattern)的官方概念可以表述为:在软件设计中,设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。它是针对特定问题或特定场景的解决方案,是一种经过…

04-22 周日 阿里云-瑶光上部署FastBuild过程(配置TLS、自定义辅助命令)

04-22 周日 阿里云-瑶光上部署FastBuild过程 时间版本修改人描述2024年4月22日14:18:59V0.1宋全恒新建文档2024年4月23日20:41:26V1.0宋全恒完成了基本流程的添加 简介 前提 准备两台服务,一台部署Docker,一台部署FastBuild的镜像容器服务所述的Docke…

最高20K/月,安全、数通、云计算多个方向急招,可内推!

高级安全工程师【岗位职责及要求】 1、统筹负责行业客户的安全项目交付,能够独自输出技术方案并完成施,并具备指导初中级工程师实施的能力; 2、掌握H3C全系列安全产品功能并对全系列产品原理有深入了解,能够熟练完成安全产品规划及…

Spring IoCDI(3)—DI详解

目录 一、属性注入 二、构造方法注入 小结:构造函数的注入 三、Setter注入 四、三种注入的优缺点分析(面试题) 1、属性注入 优点: 缺点: 2、构造方法注入(Spring4.X推荐) 优点&#x…

python数据分析-老龄化分析

一、研究背景介绍和分析安排 中国作为世界上人口最多的国家,其人口结构的变化对国内外经济都有着深远的影响。近年来,中国的老龄人口比例不断上升,这一变化引起了广泛的社会关注和政策讨论。老龄化带来的挑战包括劳动力市场紧缩、养老金负担…

Innodb实现的索引

概念 一种用于提高数据库查询性能的有序的数据结构。通过使用索引,数据库引擎可以快速定位到存储表中的特定数据,而不必逐行遍历整个表。在处理大量数据的时候可以显著加快数据检索的速度。 通过索引列队数据进行排序,降低数据排序的成本&a…

英语学习笔记4——Is this your ...?

Is this your …? 词汇 Vocabulary suit /sut/ n. 西装,正装 suit 的配套: shirt n. 衬衫tie n. 领带,领结belt n. 腰带trousers n. 裤子shoes n. 鞋子 school /skuːl/ n. 学校 所有学校 搭配:middle school 初中    hig…

C++笔记:类与对象(三)->多态

多态 虚函数 先来看一段代码&#xff1a; #include<iostream> using namespace std;class Animal { public :void run() {cout << "I dont know how to run" << endl;} };class Cat : public Animal{ public :void run() {cout << "I …

Elsevier旗下双1区TOP刊,8.8分影响因子加上超低自引率,各指标领跑计算机类SCI

【SciencePub学术】 今天小编给大家带来了一本计算机类的高分优刊解读&#xff0c;隶属于Elsevier出版社&#xff0c;JCR1区&#xff0c;中科院1区TOP&#xff0c;影响因子高达8.7&#xff0c;领域相符的学者可考虑&#xff01; APPLIED SOFT COMPUTING 1 期刊概况 【期刊简…