zoukankan      html  css  js  c++  java
  • spark学习进度6-Python爬取数据的四个简单实例

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

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

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

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

     

     代码解析:

    首先r是一个response对象;

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

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

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

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

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

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

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

     

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

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

  • 相关阅读:
    剑指 Offer 22. 链表中倒数第k个节点
    剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
    Leetcode1450. 在既定时间做作业的学生人数
    Leetcode1572. 矩阵对角线元素的和
    Leetcode 1480. 一维数组的动态和
    Idea连接数据库报错
    Java实现二叉树层次遍历并存入List的方法:从上往下,从左往右
    SpringCloud资源网站
    Java循环对list进行remove
    Java中字符串判空的正确打开方式
  • 原文地址:https://www.cnblogs.com/123456www/p/12271607.html
Copyright © 2011-2022 走看看