2.Python爬虫入门_requests
#2019-11-23
#requests的api使用非常简单
import requests
import time if __name__=='__main__':
# get请求
url_get='http://www.httpbin.org/get' #测试网站
response_get=requests.get(url=url_get)
#1.response.text 返回的是Unicode型的数据,适合得到文本
#2.response.content 返回的是bytes型的数据,适合得到图片,视频(网络编程中,服务器和浏览器只认bytes类型数据)
#2.response.headers 报文头
print('get_text\n',response_get.text)
print('get_content\n',response_get.content)
print('get_header\n',response_get.headers)
print('\n\n\n') # post请求(可以传递参数)
url_post='http://www.httpbin.org/post' #测试网站
response_post=requests.get(url=url_post,data={'name':'softpo','id':'pie'}) #以字典方式传递参数
#对于真实网站,如果参数不对,可能根本无法获取返回
#1.response_post.text
#2.response_post.content
#3.response_post.headers
print('post_text\n',response_post.text)
print('post_content\n',response_post.content)
print('post_headers\n',response_post.headers) #图片练习
url_picture='http://c.hiphotos.baidu.com/image/pic/item/6c224f4a20a44623c3f7f2649722720e0cf3d7f3.jpg'
response_picture=requests.get(url=url_picture)
#创建一个.jpg文件,以二进制的方式进行写入
with open('picture.jpg','wb') as fp:
content=response_picture.content
fp.write(content)
print('picture保存成功!') #百度贴吧 贴吧url尾号第一页0,第二页50,第三页100....
url_tieba='http://tieba.baidu.com/f?kw=%E6%9D%AD%E5%B7%9E%E7%94%B5%E5%AD%90%E7%A7%91%E6%8A%80%E5%A4%A7%E5%AD%A6&ie=utf-8&pn='
for i in range(10):
print(url_tieba+str(i*50))
response_tieba=requests.get(url_tieba)
html=response_tieba.text
with open('./TieBa/%d.html'%(i+1),mode='w',encoding='utf-8') as fp: #自己设定文件目录
fp.write(html)
print('贴吧第%d页保存成功!'%(i+1))
time.sleep(2) #如果对方有防护措施,可以使用time.sleep(n)进行休眠一段时间(n秒)
详解链接:https://blog.csdn.net/shanzhizi/article/details/50903748
2.Python爬虫入门_requests的更多相关文章
- Python爬虫入门一之综述
大家好哈,最近博主在学习Python,学习期间也遇到一些问题,获得了一些经验,在此将自己的学习系统地整理下来,如果大家有兴趣学习爬虫的话,可以将这些文章作为参考,也欢迎大家一共分享学习经验. Pyth ...
- python爬虫入门-开发环境与小例子
python爬虫入门 开发环境 ubuntu 16.04 sublime pycharm requests库 requests库安装: sudo pip install requests 第一个例子 ...
- Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分
1. 爬取前的分析 mitmdump是mitmproxy的命令行接口,比Fiddler.Charles等工具方便的地方是它可以对接Python脚本. 有了它我们可以不用手动截获和分析HTTP请求和响应 ...
- Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分
1. Python爬虫入门教程 爬取背景 2019年1月10日深夜,打开了百思不得姐APP,想了一下是否可以爬呢?不自觉的安装到了夜神模拟器里面.这个APP还是比较有名和有意思的. 下面是百思不得姐的 ...
- Python 爬虫入门(二)——爬取妹子图
Python 爬虫入门 听说你写代码没动力?本文就给你动力,爬取妹子图.如果这也没动力那就没救了. GitHub 地址: https://github.com/injetlee/Python/blob ...
- Python爬虫入门之正则表达式
在前面我们已经搞定了怎样获取页面的内容,不过还差一步,这么多杂乱的代码夹杂文字我们怎样把它提取出来整理呢?下面就开始介绍一个十分强大的工具,正则表达式! 1.了解正则表达式 正则表达式是对字符串操作的 ...
- Python爬虫入门之Cookie的使用
本节我们一起来看一下Cookie的使用. 为什么要使用Cookie呢? Cookie,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密) 比如说有些网站需要 ...
- Python爬虫入门之Urllib库的高级用法
1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...
- Python爬虫入门之Urllib库的基本使用
那么接下来,小伙伴们就一起和我真正迈向我们的爬虫之路吧. 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器解 ...
随机推荐
- android 完全区分double-tap 与 singal-tap 的方法
需求:viewpager显示图片,需要在双击时对图片进行缩放,单击时在屏幕下方弹出popwindow,由于android的双击本质就是两次单击,但是又不想在双击时触发单击时的动作,所以就在网上各种搜解 ...
- CentOS安装docker-compose
一.compose简介 compose是一个定义和运行多容器的docker应用的工具.compose 通过yaml文件配置应用服务,然后仅需一个命令就可以创建和运行所有配置中的服务. 二.compos ...
- 002 C/C++ 数组的传递
传递一个数组给一个函数的正确做法: 1.传递数组的内存首地址. 2.传递数组的有效长度.指数组的元素数量. 编译器总是将数组类型的变量作为指针传递. 计算数组的长度: int length = siz ...
- jenkins报错:Problem accessing /jenkins/. Reason: HTTP ERROR 404
这是一个Jenkins的Bug.临时解决方法是:在浏览器中手工输入:http://<ip>:<port>.不要访问"/jenkins"这个路径.
- MySQL select from where multiple conditions
Maybe one of the most used MySQL commands is SELECT, that is the way to stract the information from ...
- EEPROM的操作---SPI接口和I2C接口
参考:http://blog.csdn.net/yuanlulu/article/details/6163106 ROM最初不能编程,出厂什么内容就永远什么内容,不灵活.后来出现了PROM,可以自己写 ...
- 避免Java中NullPointerException的Java技巧和最佳实践
Java中的NullPointerException是我们最经常遇到的异常了,那我们到底应该如何在编写代码是防患于未然呢.下面我们就从几个方面来入手,解决这个棘手的问题吧. 值得庆幸的是,通过应用 ...
- github上星星1万多的python教程推荐收藏
简单的说,Python是一个“优雅”.“明确”.“简单”的编程语言. 学习曲线低,非专业人士也能上手 开源系统,拥有强大的生态圈 解释型语言,完美的平台可移植性 支持面向对象和函数式编程 能够通过调用 ...
- fastdfs详细安装教程
前言 最近开始搞的项目涉及到 fastdfs,工欲善其事,必先利其器,于是我自己搭了一台 fastdfs 服务器.坑已经帮大家都踩过了.按照该教程100%能安装成功. 前期准备 一个centos7 一 ...
- 深入理解java中的byte类型
作者 | 进击的石头--GO! 来源 | https://www.cnblogs.com/zl181015/p/9435035.html#4432849 Java也提供了一个byte数据类型,并且是基 ...