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 相关文章推荐
Windows下安装python2.7及科学计算套装
Mar 05 Python
python中随机函数random用法实例
Apr 30 Python
Python实现telnet服务器的方法
Jul 10 Python
Python学习小技巧之列表项的排序
May 20 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
python 解压pkl文件的方法
Oct 25 Python
Django接收自定义http header过程详解
Aug 23 Python
Django实现基于类的分页功能
Oct 31 Python
python手机号前7位归属地爬虫代码实例
Mar 31 Python
django之导入并执行自定义的函数模块图解
Apr 01 Python
对Python 字典元素进行删除的方法
Jul 31 Python
Python中的datetime包与time包包和模块详情
Feb 28 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文件上传主要代码讲解
2013/09/30 PHP
php实现singleton()单例模式实例
2014/11/06 PHP
php 在线导入mysql大数据程序
2015/06/11 PHP
php中时间函数date及常用的时间计算
2017/05/12 PHP
javascript 模式设计之工厂模式详细说明
2010/05/10 Javascript
js中获取事件对象的方法小结
2011/03/13 Javascript
js中indexof的用法详细解析
2013/12/24 Javascript
JQuery 在线引用及测试引用是否成功
2014/06/24 Javascript
实例分析javascript中的call()和apply()方法
2014/11/28 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
H5实现中奖记录逐行滚动切换效果
2017/03/13 Javascript
vue组件实现文字居中对齐的方法
2017/08/23 Javascript
jQuery EasyUI Layout实现tabs标签的实例
2017/09/26 jQuery
详解webpack性能优化——DLL
2017/10/20 Javascript
JS实现网页抢购功能(触发,终止脚本)
2017/11/27 Javascript
微信小程序实现折线图的示例代码
2019/06/07 Javascript
echarts实现折线图的拖拽效果
2019/12/19 Javascript
Nodejs在局域网配置https访问的实现方法
2020/10/17 NodeJs
JavaScript实现网页下拉菜单效果
2020/11/20 Javascript
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
python万年历实现代码 含运行结果
2017/05/20 Python
Python字符串、整数、和浮点型数相互转换实例
2018/08/04 Python
python网络爬虫 Scrapy中selenium用法详解
2019/09/28 Python
python实现大战外星人小游戏实例代码
2019/12/26 Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
2020/12/31 Python
python 利用matplotlib在3D空间绘制二次抛物面的案例
2021/02/06 Python
初中地理教学反思
2014/01/11 职场文书
学历公证委托书
2014/04/09 职场文书
村干部群众路线教育活动对照检查材料
2014/10/01 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
党员干部作风建设思想汇报范文
2014/10/25 职场文书
团队拓展训练心得体会
2016/01/12 职场文书
幼儿园2016圣诞节活动总结
2016/03/31 职场文书
领导激励员工的演讲稿,各种会上用得到,建议收藏
2019/08/13 职场文书
python实现对doc、txt、xls等文档的读写操作
2022/04/02 Python