Python使用requests模块爬取百度翻译


Posted in Python onAugust 25, 2020

requests模块:

python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高。

作用:模拟浏览器发请求。

提示:老版使用 urllib模块,但requests比urllib模块要简单好用,现在学习requests模块即可!

requests模块编码流程

指定url

1.1 UA伪装

1.2 请求参数的处理

2.发起请求

3.获取响应数据

4.持久化存储

环境安装:

pip install requests

案例一:破解百度翻译(post请求)

1.代码如下:

#爬取百度翻译
#导入模块
import requests
import json

#UA伪装:将对应的User-Agent封装到一个字典中
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) '
           'Chrome/57.0.2987.98 Safari/537.36'}

  #网页访问连接
 url='https://fanyi.baidu.com/sug'
 #处理url携带的参数:封装到字典中
word=input("input a word: ")
data={
  'kw': word
}

#请求发送
res=requests.post(url=url,data=data,headers=headers)
#获取响应数据:json()方法返回的是obj(如果确认响应数据是json类型的,才可以使用json())
dic_obj=res.json()

#持久化存储
filename=word+'.json'
fp=open(filename,'w',encoding='utf-8')
json.dump(dic_obj,fp=fp,ensure_ascii=False)

#打印完成提示
print('finish')

其中:

https://fanyi.baidu.com/sug 这个url的定位如下图:

Python使用requests模块爬取百度翻译

2.运行结果

Python使用requests模块爬取百度翻译

Python使用requests模块爬取百度翻译

案例二:爬取搜狗页面数据(get请求)

1.代码如下

import requests
if __name__ == "__main__":
  #step_1:指定url
  url = 'https://www.sogou.com/'
  #step_2:发起请求
  #get方法会返回一个响应对象
  response = requests.get(url=url)
  #step_3:获取响应数据.text返回的是字符串形式的响应数据
  page_text = response.text
  print(page_text)
  #step_4:持久化存储
  with open('./sogou.html','w',encoding='utf-8') as fp:
    fp.write(page_text)
  print('爬取数据结束!!!')

2.运行结果如下:

Python使用requests模块爬取百度翻译

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
王纯业的Python学习笔记 下载
Feb 10 Python
python 输出一个两行字符的变量
Feb 05 Python
深入理解Python 代码优化详解
Oct 27 Python
python getopt详解及简单实例
Dec 30 Python
Python学习思维导图(必看篇)
Jun 26 Python
利用python模拟sql语句对员工表格进行增删改查
Jul 05 Python
学习Python3 Dlib19.7进行人脸面部识别
Jan 24 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
调试Django时打印SQL语句的日志代码实例
Sep 12 Python
Django模板标签{% for %}循环,获取制定条数据实例
May 14 Python
Python使用Chrome插件实现爬虫过程图解
Jun 09 Python
如何用Matlab和Python读取Netcdf文件
Feb 19 Python
Python爬虫使用bs4方法实现数据解析
Aug 25 #Python
Python+Opencv身份证号码区域提取及识别实现
Aug 25 #Python
Python Selenium实现无可视化界面过程解析
Aug 25 #Python
一文读懂Python 枚举
Aug 25 #Python
详解python变量与数据类型
Aug 25 #Python
python获取百度热榜链接的实例方法
Aug 25 #Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
Aug 24 #Python
You might like
Syphon 虹吸式咖啡壶冲煮–拨动法
2021/03/03 冲泡冲煮
typecho插件编写教程(四):插件挂载
2015/05/28 PHP
php中Snoopy类用法实例
2015/06/19 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
PHP实现的蚂蚁爬杆路径算法代码
2015/12/03 PHP
php开发时容易忘记的一些技术细节
2016/02/03 PHP
jQuery Ajax文件上传(php)
2009/06/16 Javascript
IE6,IE7下js动态加载图片不显示错误
2010/07/17 Javascript
在标题栏显示新消息提示,很多公司项目中用到这个方法
2011/11/04 Javascript
js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
2012/12/17 Javascript
javascript eval(func())使用示例
2013/12/05 Javascript
js实现有时间限制消失的图片方法
2015/02/27 Javascript
jquery分割字符串的方法
2015/06/24 Javascript
JavaScript脚本判断蜘蛛来源的方法
2015/09/22 Javascript
Node.js 应用跑得更快 10 个技巧
2016/04/03 Javascript
非常酷炫的Bootstrap图片轮播动画
2016/05/27 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
Angular.js去除页面中显示的空行方法示例
2017/03/30 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
2020/10/02 Javascript
iview实现动态表单和自定义验证时间段重叠
2021/01/10 Javascript
Python 对象中的数据类型
2017/05/13 Python
Python爬虫爬取杭州24时温度并展示操作示例
2020/03/27 Python
Python BeautifulReport可视化报告代码实例
2020/04/13 Python
从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)
2020/08/31 Python
Django扫码抽奖平台的配置过程详解
2021/01/14 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
linux面试题参考答案(9)
2015/01/07 面试题
幼儿园校车司机的岗位职责
2014/01/30 职场文书
化学教育专业自荐信
2014/07/04 职场文书
生活小常识广播稿
2014/09/16 职场文书
房屋财产继承协议书范本
2014/11/03 职场文书
关于学习的决心书
2015/02/05 职场文书
重温入党誓词主持词
2015/06/29 职场文书
go语言求任意类型切片的长度操作
2021/04/26 Golang
python机器学习Github已达8.9Kstars模型解释器LIME
2021/11/23 Python