python爬虫(九) requests库之post请求

1、方法:
response=requests.post("https://www.baidu.com/s",data=data)

2、拉勾网职位信息获取

因为拉勾网设置了反爬虫机制,在拉勾网中,一些页面的信息获取方法是post,所以就用到了post方法

在拉勾网中,我们搜索与python相关的职业,如果我们爬取这一页的信息,是没有职业的信息的,因为职业的信息在另外的jsp页面上,所以我们需要在这个界面上爬取到职业的信息,选择一个城市+学生身份

同样,在页面右击,选择查看元素,找到网络,刷新,选择跟职位相关的

然后右侧的网址为url:

这个页面上面的网址为urls:

可以看到他的获取方法是post,所以我们要获取职位的信息,需要post函数

这时我们需要用到data参数

以及请求头:

代码如下:

import requests

url=‘https://www.lagou.com/jobs/positionAjax.json?xl=%E6%9C%AC%E7%A7%91&px=default&gx=%E5%85%A8%E8%81%8C&city=%E6%88%90%E9%83%BD&needAddtionalResult=false&isSchoolJob=1‘data ={    ‘first‘:"true",    ‘pn‘:1,    ‘kd‘:"python"}headers={    ‘User-Agent‘:"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36",    ‘Referer‘:"https://www.lagou.com/jobs/list_python/p-city_252?px=default&gx=%E5%85%A8%E8%81%8C&gj=&xl=%E6%9C%AC%E7%A7%91&isSchoolJob=1",    ‘Accept‘:‘application/json, text/javascript, */*; q=0.01‘}urls=‘https://www.lagou.com/jobs/list_python/p-city_252?px=default&gx=%E5%85%A8%E8%81%8C&gj=&xl=%E6%9C%AC%E7%A7%91&isSchoolJob=1#filterBox‘s = requests.Session()s.get(urls, headers=headers, timeout=3)cookie = s.cookiesresponse = s.post(‘https://www.lagou.com/jobs/positionAjax.json?xl=%E6%9C%AC%E7%A7%91&px=default&gx=%E5%85%A8%E8%81%8C&city=%E6%88%90%E9%83%BD&needAddtionalResult=false&isSchoolJob=1‘,data=data,headers=headers, cookies=cookie,timeout=5)

print(response.text)with open(‘py.html‘, ‘w‘) as file:        file.write(response.text)

中间出现错误:您操作太频繁,请稍后再访问,解决方法参考网址:http://www.freesion.com/article/140098505/

原文地址:https://www.cnblogs.com/zhaoxinhui/p/12375176.html

时间: 2024-10-12 08:42:04

python爬虫(九) requests库之post请求的相关文章

python爬虫之requests库

requests库介绍 发送http请求的第三方库,兼容python2和python3 安装: pip install requests 使用: import requests发送请求response = requests.get(url)response = requests.post(url) 响应内容请求返回的值是一个response对象,是对http协议服务端返回数据的封装response对象主要属性和方法: response.status_code  返回码  response.hea

Python爬虫之Requests库入门

目录 Requests库 Requests库的7个主要方法 Requests库的get()方法 Response对象的属性 理解Requests库的异常 爬取网页的通用代码框架 HTTP协议 协议对资源的操作 理解PATCH和PUT的区别 HTTP协议与Requests库 Requests库 Requests库的7个主要方法 方法 说明 requests.request() 构造一个请求,支撑以下各方法的基础方法 requests.get() 获取HTML网页的主要方法,对应于HTTP的GET

python 爬虫 基于requests模块的get请求

需求:爬取搜狗首页的页面数据 import requests # 1.指定url url = 'https://www.sogou.com/' # 2.发起get请求:get方法会返回请求成功的响应对象 response = requests.get(url=url) # 3.获取响应中的数据:text属性作用是可以获取响应对象中字符串形式的页面数据 page_data = response.text # 4.持久化数据 with open("sougou.html","w&

Python接口测试,requests库的post请求进行文件上传

前言 如果需要发送文件到服务器,比如上传图片.视频等,就需要发送二进制数据. 一般上传文件使用的都是 Content-Type: multipart/form-data; 数据类型,可以发送文件,也可以发送相关的消息体数据. POST一个多部分编码(Multipart-Encoded)的文件 使用 requests 上传文件的基本步骤 构造文件数据,通过 open 函数以二进制方式打开文件 构造相关数据 发送请求,将文件数据以  files  参数传入,其他消息体数据通过  data .json

【Python爬虫】Requests库的安装

1.按照普通的pip不能行,说find不能 有位小杰控的大牛说了一句:换一个国内的更新源吧, pip install requests -i http://pypi.douban.com/simple --trusted-host=pypi.douban.com 然后就好了! 原文地址:https://www.cnblogs.com/naraka/p/8994173.html

Python接口测试,requests库的post请求进行文件下载

前言 之前讲了文件上传,当然就有文件下载啦 文件下载操作步骤 极其简单,将二进制格式的响应内容存进本地文件中,根据需要下载的文件的格式来写文件名即可 1 down_url = 'https://www.imooc.com/mobile/appdown' 2 res = requests.post(down_url).content 3 with open("F:/imooc.apk", "wb") as f: 4 f.write(res) 原文地址:https://

爬虫基础(requests库的基本使用)--02

什么是Requests Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用,你会发现,其实urllib还是非常不方便的,而Requests它会比urllib更加方便,可以节约我们大量的工作.(用了requests之后,你基本都不愿意用urllib了)一句话,requests是python实现的最简单易用的HTTP库,建议爬虫使用requests库. 默认安装好python之后,是没有安

Python爬虫的Urllib库有哪些高级用法?

本文和大家分享的主要是python爬虫的Urllib库的高级用法相关内容,一起来看看吧,希望对大家学习python有所帮助. 1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器解释才呈现出来的,实质它 是一段HTML代码,加 JS.CSS,如果把网页比作一个人,那么HTML便是他的骨架,JS便是他的肌肉,CSS便是它的衣服.所以最重要的部分是存在于HTML中的,下面我 们就写个例子来扒一个网页下来. imp

Python爬虫之Urllib库的基本使用

Python爬虫之Urllib库的基本使用 import urllib2 response = urllib2.urlopen("http://www.baidu.com") print response.read() 其实上面的urlopen参数可以传入一个request请求,它其实就是一个Request类的实例,构造时需要传入Url,Data等等的内容.比如上面的两行代码,我们可以这么改写 # -*- coding: utf-8 -*- """ Cre

小白学 Python 爬虫(32):异步请求库 AIOHTTP 基础入门

人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Linux基础入门 小白学 Python 爬虫(4):前置准备(三)Docker基础入门 小白学 Python 爬虫(5):前置准备(四)数据库基础 小白学 Python 爬虫(6):前置准备(五)爬虫框架的安装 小白学 Python 爬虫(7):HTTP 基础 小白学 Python 爬虫(8):网页基