python爬取toefl_spark学习进度6-Python爬取数据的四个简单实例

今天本来想把昨天安装的intellij配置好,但是一直显示没有网络,网上查了相关资料也没有查出来解决办法。

1279451-20200206232220306-165530488.png

然后暂停了intellij的配置,开始做了几个Python爬取简单数据的实例,先做了几个最简单的,以后再加大难度(用idle编码):

(1)京东商品页面爬取:

链接:https://item.jd.com/2967929.html

1279451-20200206233036245-1945687924.png

代码解析:

首先r是一个response对象;

r.status_code返回一个值,如果是200的话则正常,如果时候503的话,则抛出异常,调用该方法的目的是查看返回的response对象是否正确;

r.encoding是返回编码信息,如果编码为gbk则表示这个网站提供了页面信息的相关编码;

(2)亚马逊商品页面的爬取:

1279451-20200206234613628-1884573304.png

r.status_code返回值为503,说明请求没有得到正确的答复,这时,查看我们访问的http的头可知我们告诉了亚马逊网站我们是用Python的requests库来访问的,并且亚马逊拒绝了爬虫的访问,所以,这时我们更改了我们的头部信息,让爬虫模拟一个浏览器来访问,把user-agent更改为Mozolla/5.0就可以成功的访问了。

(3)百度搜索关键词提交:

1279451-20200207000125997-1309680718.png

1279451-20200207001028774-849233105.png

百度对关键词的搜索提供了接口:http://www.baidu.com/s?wd=keyword。所以这时利用了params,将键字对输入进去,但是这里当我查询url时,并没有正常显示,百度利用安全认证,我把http的头部更改为Mozilla/5.0也不起作用,还未解决。

(4)网络图片的爬取和存储:

1279451-20200207001727454-120308200.png

只适用于最简单的图片爬取,如https://gss2.bdstatic.com/fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike80%2C5%2C5%2C80%2C26/sign=c9162213c4fcc3cea0cdc161f32cbded/279759ee3d6d55fb3cfdd81761224f4a20a4ddcc.jpg。

结尾是图片文件的形式,r.content是返回内容的二进制形式,所以用write方法写入文件中,形成jpg文件。open函数中的‘wb’是指打开文件的模式,相关模式含义如下表:

1279451-20200207003348116-355692659.png

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django REST framework 版本

API 版本控制允许我们在不同的客户端之间更改行为(同一个接口的不同版本会返回不同的数据)。 DRF提供了许多不同的版本控制方案。 可能会有一些客户端因为某些原因不再维护了,但是我们后端的接口还要不断的更新迭代,这个时候通过…

AngularJS中的过滤器(filter)

AngularJS中的过滤器是用于对数据的格式化,或者筛选的函数,可以直接通过以下语法使用: {{expression|filter}} {{expression|filter1|filter2}} {{expression|filter1:param1,param2,...|filter2} 过滤器的种类有number,currency&…

计算机考试上传照片教程,电脑照片传到iPhone手机的详细步骤【图文】

苹果自带的iOS系统是不可以随便和电脑进行数据交换的,必须使用iTunes软件。许多用户为此问题困扰,我们有什么可以把电脑照片传到iPhone手机?下面我们就一起来看看把电脑照片传到iphone设备的详细步骤。具体方法如下:1,…

Mware HA实战攻略之五VMwareHA测试验收

【IT168 专稿】在上一篇"VMware HA实战攻略之四VMwareHA安装及配置"中(点击),讲述了VMwareHA的概念及创建过程,还讲述了创建过程中要注意的一些事项。在本篇中,将要讲述如何在群集节点之一的ESX主机上安装虚…

AVS解码器在DSP平台上的优化

AVS( Audio Video Coding STandard)是由我国数字 音视频标准工作组制定的具有自主知识产权的第二代音视频压缩准。AVS实行1 元专利费用的原则,相比其它音视频编解码标准具有编码效率高、专利费用低、授权模式简单等优势。AVS 解码器的结构复杂、运算量较大&#xff…

如何重做计算机系统软件,电脑卡如何一键重做Win7旗舰版

电脑卡如何一键重做Win7旗舰版?小伙伴们在使用电脑的过程中系统会越来越卡,对于新手小白来说怎么重装系统是一个比较烦恼的问题,不知道如何下手,从哪里开始,那么接下来就以云骑士装机大师为例给小伙伴们讲解一下电脑卡…

python去停用词用nltk_【NLTK】安装和使用NLTK分词和去停词

黄聪:PythonNLTK自然语言处理学习(一):环境搭建 http://www.cnblogs.com/huangcong/archive/2011/08/29/2157437.html 安装NLTK可能出现的问题: 1. pip install ntlk 2. 如果遇到缺少stopwords报错如下:&am…

JavaScript知识概要

JavaScript 1.简介 JavaScript简介: JS是运行在浏览器端的一门脚本语言,一开始主要用来做浏览器验证,但现在功能已经不止于此。 所谓脚本语言就是指,代码不需要编译,直接运行,并且读入…

vue项目cordova打包的android应用

准备工作nodejs、cordova、AndroidStudio这些在上一篇文章中已经说过了,这里就不重复说明。以此文记录vue项目用cordova打包移动app的方法。 1.创建一个cordova项目,如创建一个名为testapp的工程:cordova create testapp 2.添加安卓平台 cord…

Django REST framework 源码解析

先放图,放图说话,可能有点长 主流程 这个颜色 从setting导入默认数据流程是 这个颜色 主流程大概流程写一下:as_view 实际返回view,并把参数{"get":"list","post":"create"}传递给view…

-9 逆序输出一个整数的各位数字_leetcode两数相加(大整数相加)

题目来源于leetcode第二题两数相加。题目描述给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来…

计算机如何添加管理员权限,电脑使用代码如何添加管理员权限

我们在使用电脑运行某些软件的时候,可能需要用到管理员权限才能运行,通常来说直接点击右键就会有管理员权限,但最近有用户向小编反馈,在需要管理员权限的软件上点击右键没有看到管理员取得所有权,那么究竟该如何才能获…

sql注入问题

${}拼接sql,会引起sql注入,sql注入例如: select * from user where name like ‘%’ or 11 or ‘%’; 这种情况下,论name为什么都可以执行 转载于:https://www.cnblogs.com/mengyinianhua/p/7649325.html

teechart绘制实时曲线_快速学会CAD绘制传输线路图纸

一工具CAD工程设计软件二方法和步骤万事开头难,遇到不懂的知识刚开始都有畏难的情绪,只要有决心学习,诚心想学会一项技能,那学会学好它就只是时间问题了。我们常常面临时间紧、需要快速入门甚至熟练地解决工作中实际情况的问题&am…

使用ajax获取用户所在地的天气

1.要获取用户归属地的天气&#xff0c;首先得获取用户所在的市区&#xff0c; 这里先获取用户的IP&#xff0c;通过IP获取IP的归属地&#xff0c;从而得到用户 地址。 获取客户端ip: js: <scripttype"text/javascript" src"http://pv.sohu.com/cityjson?ieu…

Python 之协程

之前我们学习了线程、进程的概念&#xff0c;了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位。按道理来说我们已经算是把cpu的利用率提高很多了。但是我们知道无论是创建多进程还是创建多线程来解决问题&#xff0c;都要消耗一定的时间来创建进程、创建线…

ip变换器苹果系统_加密锁能为高铁做什么?铁路电力变换器系统告诉您

代表国之重器的高铁&#xff0c;是怎样保护他们在软件上投资的专有技术不被仿冒、逆向工程和篡改呢&#xff1f;与一般的软件保护加密不同&#xff0c;高铁运行中的实时控制器对物理环境有着严苛的要求&#xff0c;如铁路电力变换器系统&#xff0c;须满足典型工业应用的扩展温…

zxing .net 多种条码格式的生成

下载地址&#xff1a;http://zxingnet.codeplex.com/ zxing.net是.net平台下编解条形码和二维码的工具&#xff0c;使用非常方便。 本文主要说明一下多种类型条码的生成。 适用的场景&#xff0c;标签可视化设计时&#xff0c;自定义条码类型&#xff0c;预览。 遍历zxing支持的…

k8s dashboard_windows10 部署 docker+k8s 集群

下面是经过踩坑之后的 windows10 单机部署 docker k8s 步骤&#xff0c;其中有几处比较关键的地方需要注意&#xff0c;后面加粗标注&#xff0c;下面就开始吧&#xff01;0、下载cmder在 windows 上有一个趁手的命令行工具非常有必要&#xff0c;推荐 Cmder&#xff0c;下面是…

Python 之网络编程基础

套接字&#xff08;socket&#xff09;初使用 基于TCP协议的socket tcp是基于链接的&#xff0c;必须先启动服务端&#xff0c;然后再启动客户端去链接服务端 server端 import socket sk socket.socket() sk.bind((127.0.0.1,8898)) # 把地址绑定到套接字 sk.listen() …