爬虫中的post方法

博主您好!
学习您这篇博客【python爬虫】5.爬虫实操(歌词爬取)遇到些问题,希望您能解答。
1、
包含数据的请求已将已将请求方式改为了post,其中URL的内容只有简单的一行数据

img

URL对应内容:

img


用get方法也只能获得这一行数据,.json()方法也只能获得这一行数据

然后看了您下一篇博客【python爬虫】6.爬虫实操(带参数请求数据) 去使用post方法获取json数据时,也遇到了一些问题

2、
在负载中,查询字符串参数好像做了加密,而且那个表单数据参数也是一坨。

img

将参数传到requests中后,运行的结果仍是上面那个结果

我实在是没有办法解决这些问题,希望能得到您的帮助。

你好,老铁。 我试了一下,你的操作没有任何问题,只是现在这个网站的策略改了,直接这样请求不到了。
你可以尝试用Selenium 来试一下,是可以的。

另外,也可以找一些其他网站,加密没这么严格的,来练练手。

【以下回答由 GPT 生成】

问题解答:

首先,关于使用post方法获取更多数据的问题,下面是一个使用post方法发送请求,并获取返回数据的示例代码:

import requests

url = 'https://example.com'  # 替换成你要请求的URL
data = {'key1': 'value1', 'key2': 'value2'}  # 替换成你要发送的数据

response = requests.post(url, data=data)
print(response.text)  # 打印返回的数据

在上面的代码中,你需要将url替换为你要请求的URL,并将data替换为你要发送的数据。使用requests.post方法发送post请求,并将返回的响应对象赋值给response变量。通过response.text可以获取到返回的数据。

关于查询字符串参数加密和表单数据参数的问题,可以尝试使用params参数和data参数来传递参数。下面是一个示例代码:

import requests

url = 'https://example.com'  # 替换成你要请求的URL
params = {'key1': 'value1', 'key2': 'value2'}  # 替换成你要发送的查询字符串参数
data = {'key3': 'value3', 'key4': 'value4'}  # 替换成你要发送的表单数据参数

response = requests.get(url, params=params, data=data)
print(response.text)  # 打印返回的数据

在上面的代码中,使用params参数来传递查询字符串参数,使用data参数来传递表单数据参数。根据具体情况,你可以选择使用get方法或post方法来发送请求。

如果你仍然得到与之前相同的结果,可能是因为参数传递有误或者请求的URL与预期不符。你可以检查一下参数是否正确,并根据实际情况调整请求的URL。

希望以上解答能够帮助到你,如果还有其他问题,请随时提问。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^