在开发爬虫的过程中,遇到异步加载的接口,我们一般会使用如下几步来使用Python获取接口里面的内容:
headers = {
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8',
'Connection': 'keep-alive',
'Content-Type': 'application/json; charset=UTF-8',
'Cookie': '__cfduid=d82848eba37c2cbe78ba309bcdd18aa381560756114; v=AqRSJ14kpQxCvtFA70tAOEAnc6mXPcinimFc677FMG8yaUrb5k2YN9pxLHoN; _xsrf=2|c8685b58|ae9e0011924ca21d94653488771dc217|1563418855',
'DNT': 1,
'Host': 'exercise.kingname.info',
'Origin': 'http://exercise.kingname.info',
'Referer': 'http://exercise.kingname.info/exercise_ajax_3.html',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
'X-Requested-With': 'XMLHttpRequest'}
整个过程冗长、机械又枯燥。那有没有办法在30秒内完成这所有的操作呢?
请看下面这个动图:
实现步骤如下:
Copy
- CopyascURL
,如下图所示:Import
按钮:PasteRawText
,并粘贴,如下图所示:Import
按钮。回到Postman主界面,点击右上角的 Code
按钮,如下图所示:PythonRequests
,最后点击右上角的 CopytoClipboard
以上就是全部过程,速度快的话,不到30秒就能完成。让你把更多精力放在真正有用的地方,而不是这些机械繁杂的操作。
这种方式粘贴下来的代码,虽然可以正常工作,但是有时候还是需要你做一些修改,才能更好地使用。
例如它发起请求使用的是 requests.request('POST',...)
这种写法,但是你实际项目中可能需要使用 requests.post(...)
或者 session.post(...)
;
这些自动生成的代码使用的是 print(response.text)
,有时候你可能需要改成 response.json()
或者 response.content.decode('utf-8')
。