前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

以下文章来源于csdn,作者 王延领

对于一个net开发者爬虫真真的以前没有写过。这段时间开始学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup。python 版本:python3.6 ,IDE :pycharm。

第三方库

首先安装

我是用的pycharm所以另外的脚本安装我这就不介绍了。

如上图打开默认设置选择Project Interprecter,双击pip或者点击加号,搜索要安装的第三方库。其中如果建立的项目多记得Project Interprecter要选择正确的安装位置不然无法导入。

Requests库

requests库的官方定义:Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用。其实他就是请求网络获取网页数据的。

import requests
header={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'}
res=requests.get('http://sh.58.com/zufang/',headers=header)
try:print(res.text);
except  ConnectionError:print('访问被拒绝!!!')

结果如下:

其中Request Headers的参数如下:

  • headers的一些属性:
  • Accept:指定客户端能够接收的内容类型,内容类型的先后次序表示客户端接收的先后次序
  • Accept-Lanuage:指定HTTP客户端浏览器用来展示返回信息优先选择的语言
  • Accept-Encoding指定客户端浏览器可以支持的web服务器返回内容压缩编码类型。表示允许服务器在将输出内容发送到客户端以前进行压缩,以节约带宽。而这里设置的就是客户端浏览器所能够支持的返回压缩格式。
  • Accept-Charset:HTTP客户端浏览器可以接受的字符编码集
  • User-Agent : 有些服务器或 Proxy 会通过该值来判断是否是浏览器发出的请求
  • Content-Type : 在使用 REST 接口时,服务器会检查该值,用来确定 HTTP Body 中的内容该怎样解析。
  • application/xml : 在 XML RPC,如 RESTful/SOAP 调用时使用
  • application/json : 在 JSON RPC 调用时使用
  • application/x-www-form-urlencoded : 浏览器提交 Web 表单时使用
  • 在使用服务器提供的 RESTful 或 SOAP 服务时, Content-Type 设置错误会导致服务器拒绝服务

BeautifulSoup库

BeautifulSoup可以轻松的解析Requests库请求的页面,并把页面源代码解析为Soup文档,一边过滤提取数据。这是bs4.2的文档。
Beautiful Soup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,如果我们不安装它,则 Python 会使用 Python默认的解析器,其中lxml 据说是相对而言比较强大的我下面的暗示是python 标准库的。

选择器select

案例:爬取上海租房图片

import requests
import urllib.request
import os
import time
from bs4 import BeautifulSoup
header={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36'}
url=['http://sh.58.com/zufang/pn{}/?ClickID=2'.format(number) for number in range(6,51)]#分页抓取
adminCout=6
for arurl in url:adminCout=adminCout+1res=requests.get(arurl,headers=header)soup=BeautifulSoup(res.text,'html.parser')arryImg=soup.select('.img_list img')print(arryImg)count = 0;for img in arryImg:print(img['lazy_src'])_url = img['lazy_src']pathName = "E:\\2333\\" + str(adminCout)+"_"+str(count) + ".jpg"  # 设置路径和文件名result = urllib.request.urlopen(_url)  # 打开链接,和python2.x不同请注意了data = result.read()  # 否则开始下载到本地with open(pathName, "wb") as code:code.write(data)code.close()count = count + 1  # 计数+1print("正在下载第:", count)time.sleep(30)

租房子,光看数据怎么够,Python爬取某站租房图片相关推荐

  1. python爬取b站数据_使用Python爬取B站全站视频信息

    B站我想大家都熟悉吧,其实 B 站的爬虫网上一搜一大堆.不过纸上得来终觉浅,绝知此事要躬行,我码故我在.最终爬取到数据总量为 760万条. 准备工作 首先打开 B 站,随便在首页找一个视频点击进去.常 ...

  2. python为啥爬取数据会有重复_使用python爬取B站千万级数据

    Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定.它包含了一组完善而且容易理 ...

  3. python爬取b站数据_如果利用Python爬取B站上千万数据?B站直播都是大屌萌妹吗?...

    粉丝独白 说起热门的B站相信很多喜欢玩动漫的,看最有创意的Up主的同学一定非常熟悉.我突发奇想学Python这么久了,为啥不用Python爬取B站中我关注的人,已经关注的人他们关注的人,看看全站里面热 ...

  4. python实战|python爬取58同城租房数据并以Excel文件格式保存到本地

    python实战|python爬取58同城租房数据并以Excel文件格式保存到本地 一.分析目标网站url 目标网站:https://cq.58.com/minsuduanzu/ 让我们看看网站长啥样 ...

  5. 大数据Python爬取B站电影排行榜——爬取信息

    大数据Python爬取B站电影排行榜-信息爬取 前言 一.配置环境 二.爬取B站电影排行榜top100 1.找到B站电影排行榜top100网页 2.用URL进行爬取信息 三.建立Excel表并导出 总 ...

  6. python爬取b站弹幕并进行数据可视化

    python爬取b站弹幕并进行数据可视化 1.第一步,爬取b站弹幕 我们随便打开一个b站视频 打开开发者模式,在network下搜索list,可以找到该视频的弹幕文件 打开之后是这个样子的 结构还是比 ...

  7. Python 爬取 B 站 5000 条视频,揭秘为何千万人为它流泪!

    [CSDN 编者按]<哪吒>看哭了无数人!编者看的那场,有很多小朋友,一开始他们还被太乙真人的滑稽,逗得哈哈笑.到了哪吒成魔要杀父亲.跪别父母.因为宿命不得以和敖丙为敌时,影院里突然安静下 ...

  8. 用Python爬取B站弹幕并做成词云

    用Python爬取B站弹幕并做成词云 一.获取视频的cid号 1.进入想爬的视频,打开浏览器设置里的"开发者工具": 进入NetWork后等待requests刷出,数据够了后可随意 ...

  9. python爬取bilibili弹幕_用Python爬取B站视频弹幕

    原标题:用Python爬取B站视频弹幕 via:菜J学Python 众所周知,弹幕,即在网络上观看视频时弹出的评论性字幕.不知道大家看视频的时候会不会点开弹幕,于我而言,弹幕是视频内容的良好补充,是一 ...

最新文章

  1. android源码分析-深入MessageQueue
  2. [YTU]_2624( B 结构体--统计投票)
  3. 201771010119穷吉第八周
  4. leetcode1414. 和为 K 的最少斐波那契数字数目(贪心算法)
  5. java毕业设计_基于ssm的毕业设计管理系统
  6. 下拉框 切换一个下拉框 另一个下拉框做相应的改变
  7. 计算机多功能解说词,音乐教室解说词
  8. ccf-csp 201809-2 买菜
  9. PMP工具与技术之人际关系与团队技能
  10. [PTA]练习5-3 数字金字塔
  11. f4在计算机中的作用,F4键原来这么神奇!F4在办公时的妙用你知多少
  12. 双亲委派机制以及打破双亲委派机制
  13. Power bi 4.3 子弹图
  14. JDK自带的Timer定时器实现每天24点修改数据
  15. KRPano动态热点专用素材图50多个,加动态热点使用方法
  16. 22岁生日,糟糕的一天
  17. Qt编译通过,运行时出现the process was ended forcefully的crashed问题
  18. su 和su -的区别
  19. django一:windows及linux下安装django
  20. 搜狗输入法怎么变成英文半角

热门文章

  1. 2008服务器系统怎么备份,服务器2008系统备份
  2. python 批量造数据
  3. 均值-方差模型实现及应用_python_数据分析_9
  4. QT简单实验——计算器
  5. Canvas学习笔记及像素操作——实现马赛克
  6. TP问题现象分析和解决方法汇总
  7. Magento开发文档(七):Magento EAV模型
  8. 等保2.0linux测评指南
  9. 好架构是进化来的,不是设计来的(58架构演进)
  10. FATE —— 二.4.2 Criteo上的联邦经典CTR模型训练