【安全合规】python爬虫从0到1 -ajax的get请求

简介: 即异步的JavaScript和XML

ajax的get请求

下面让我们进阶get请求的另外的中方法!!!


(一)Ajax简介

Ajax,全称为Asynchronous JavaScript and XML,即异步的JavaScript和XML。它不是一门编程语言,而是利用JavaScript在保证页面不被刷新、页面链接不改变的情况下与服务器交换数据并更新部分网页的技术。

对于传统的网页,如果想更新其内容,那么必须要刷新整个页面,但有了Ajax,便可以在页面不被全部刷新的情况下更新其内容。在这个过程中,页面实际上是在后台与服务器进行了数据交互,获取到数据之后,再利用JavaScript改变网页,这样网页内容就会更新了。


(二)实战演练

找到数据之后,将数据下载下来,另外,需要注意的点是在写入文件时需要用到open方法,而open方法的编码为GBK,当我们保存的内容为汉字时,需要在open方法中加入encoding=“utf-8”,从而转换为utf-8的编码。

# 将数据保存到本地
# 由于open方法的编码为gbk,如果我们需要保存汉字则需要在open方法中指定编码格式:encoding=‘utf-8’
fp = open('豆瓣电影.json','w',encoding='utf-8')
fp.write(content)

扩展: open方法还有另外一种写法,作用与上述相同:

with open("doaban.json",'w',encoding='utf-8') as fp:
    fp.write(content)

实例:


import urllib.request


url = ‘https://movie.douban.com/j/search_subjects?type=movie&tag=%E7%A7%91%E5%B9%BB&sort=time&page_limit=30&page_start=0


headers = {undefined

‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36’

}


#请求对象的定制

request = urllib.request.Request(url = url , headers = headers)


#模拟浏览器向服务器发送请求

response = urllib.request.urlopen(request)


#获取响应数据

content = response.read().decode(‘utf-8’)


#将数据保存到本地

#由于open方法的编码为gbk,如果我们需要保存汉字则需要在open方法中指定编码格式:encoding=‘utf-8’

fp = open(‘豆瓣电影.json’,‘w’,encoding=‘utf-8’)

fp.write(content)


#扩展另一种写法;

#with open(“doaban.json”,‘w’,encoding=‘utf-8’) as fp:

#fp.write(content)


print(“保存完毕”)


相关文章
|
1月前
|
XML 前端开发 JavaScript
|
2月前
|
JSON JavaScript 前端开发
《进阶篇第6章:vue中的ajax》包括回顾发送ajax请求方式、vue-cli脚手架配置代理服务器、vue-resource
《进阶篇第6章:vue中的ajax》包括回顾发送ajax请求方式、vue-cli脚手架配置代理服务器、vue-resource
59 22
|
2月前
|
前端开发 JavaScript
回顾前端页面发送ajax请求方式
回顾前端页面发送ajax请求方式
38 18
|
2月前
|
前端开发 JavaScript Java
第6章:Vue中的ajax(包含:回顾发送ajax请求方式、vue-cli脚手架配置代理服务器)
第6章:Vue中的ajax(包含:回顾发送ajax请求方式、vue-cli脚手架配置代理服务器)
81 4
|
2月前
|
前端开发 JavaScript 数据处理
JQuery 拦截请求 | Ajax 请求拦截
【10月更文挑战第4天】
110 1
|
2月前
|
前端开发 API 开发者
深度剖析:AJAX、Fetch API如何成为Python后端开发者的最佳拍档!
深度剖析:AJAX、Fetch API如何成为Python后端开发者的最佳拍档!
40 4
|
2月前
|
前端开发 JavaScript API
惊呆了!学会AJAX与Fetch API,你的Python Web项目瞬间高大上!
在Web开发领域,AJAX与Fetch API是提升交互体验的关键技术。AJAX(Asynchronous JavaScript and XML)作为异步通信的先驱,通过XMLHttpRequest对象实现了局部页面更新,提升了应用流畅度。Fetch API则以更现代、简洁的方式处理HTTP请求,基于Promises提供了丰富的功能。当与Python Web框架(如Django、Flask)结合时,这两者能显著增强应用的响应速度和用户体验,使项目更加高效、高大上。
51 2
|
2月前
|
前端开发 API 开发者
从零到精通,AJAX与Fetch API让你的Python Web前后端交互无所不能!
从零到精通,AJAX与Fetch API让你的Python Web前后端交互无所不能!
45 3
|
3月前
|
前端开发
React技术栈-react使用的Ajax请求库实战案例
这篇文章介绍了在React应用中使用Axios和Fetch库进行Ajax请求的实战案例,展示了如何通过这些库发送GET和POST请求,并处理响应和错误。
61 10
React技术栈-react使用的Ajax请求库实战案例
|
3月前
|
前端开发
React技术栈-react使用的Ajax请求库用户搜索案例
这篇文章展示了一个React技术栈中使用Ajax请求库(如axios)进行用户搜索的实战案例,包括React组件的结构、状态管理以及如何通过Ajax请求获取并展示GitHub用户数据。
36 7
React技术栈-react使用的Ajax请求库用户搜索案例