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字符和字符值(ASCII或Unicode码值)转换方法
May 21 Python
对Python中内置异常层次结构详解
Oct 18 Python
python如何实现视频转代码视频
Jun 17 Python
Python如何计算语句执行时间
Nov 22 Python
Python OpenCV视频截取并保存实现代码
Nov 30 Python
python从内存地址上加载python对象过程详解
Jan 08 Python
python中的itertools的使用详解
Jan 13 Python
Python如何把Spark数据写入ElasticSearch
Apr 18 Python
关于tensorflow softmax函数用法解析
Jun 30 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
实操Python爬取觅知网素材图片示例
Nov 27 Python
Python编写车票订购系统 Python实现快递收费系统
Aug 14 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
十天学会php(3)
2006/10/09 PHP
PHP连接SQL server数据库测试脚本运行实例
2020/08/24 PHP
用js实现随机返回数组的一个元素
2007/08/13 Javascript
JavaScript 处理Iframe自适应高度(同或不同域名下)
2013/03/29 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
jquery form 隐藏的input 选择
2014/04/29 Javascript
JQuery显示、隐藏div的几种方法简明总结
2015/04/16 Javascript
JavaScript获取数组最小值和最大值的方法
2015/06/09 Javascript
js强制把网址设为默认首页
2015/09/29 Javascript
javascript如何实现暂停功能
2015/11/06 Javascript
jQuery mobile的header和footer在点击屏幕的时候消失的解决办法
2016/07/01 Javascript
网站发布后Bootstrap框架引用woff字体无法正常显示的解决方法
2016/11/24 Javascript
Vue.js如何优雅的进行form validation
2017/04/07 Javascript
用js屏蔽被http劫持的浮动广告实现方法
2017/08/10 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
Node.js原生api搭建web服务器的方法步骤
2019/02/15 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
Python基于identicon库创建类似Github上用的头像功能
2017/09/25 Python
浅析python中的迭代与迭代对象
2018/10/08 Python
树莓派与PC端在局域网内运用python实现即时通讯
2019/06/22 Python
Python 单例设计模式用法实例分析
2019/09/23 Python
Python中猜拳游戏与猜筛子游戏的实现方法
2020/09/04 Python
基于HTML5代码实现折叠菜单附源码下载
2015/11/27 HTML / CSS
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
NARS化妆品官方商店:美国彩妆品牌
2017/08/26 全球购物
Ajax请求总共有多少种Callback
2016/07/17 面试题
初中生自我评价
2014/02/01 职场文书
优秀士兵先进事迹
2014/02/06 职场文书
暑假家长评语大全
2014/04/17 职场文书
国旗下的讲话演讲稿
2014/05/08 职场文书
2014城乡环境综合治理工作总结
2014/12/19 职场文书
党员干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
机关干部正风肃纪心得体会
2016/01/15 职场文书
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
利用Python实现模拟登录知乎
2022/05/25 Python