Python:在同一页面发送多个POST请求
Python: Send multiple POST requests on the same page
是否可以使用 selenium webdriver 向服务器发送多个 HTTP POST 请求?
例如,如果用户 ID 是自动递增的,并且前 1000 个关注者关注了我,是否可以 运行 在 POST 请求不存在的站点上进行类似以下内容return 重新加载:
** 该网站显然要求用户登录才能执行此类操作,因此采用了 selenium 方法。
driver = webdriver.Firefox()
driver.get("http://example.com/myfollowers")
for userid in range(1, 1001):
driver.post("http://example.com/unfollow/{}".format(userid))
driver.close()
下面是向网站发出的 Post 请求的片段示例。
General:
Request URL:http://example.com/unfollow/1
Request Method:POST
Status Code:200 OK
Remote Address:192.168.1.1:80
Response Headers
Request headers:
Accept:*/*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:0
Cookie:ob-i=1;
Host:example.com
Origin:http://example.com
Referer:http://example.com/user/followings
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.26.02 Safari/537.36
X-Requested-With:XMLHttpRequest
不知道如何使用 selenium 网络驱动程序制作它。但您可以使用 AJAX 发送多个 post 请求。很简单的语言,稍微懂一点的话2天就能学会javascript。你可以从 w3schools 学习它试试看。
为什么它不起作用?
"where POST requests don't return a reload"请解释一下你的意思!
总之,requests
似乎更适合这个任务:
这是一个简单的例子:
import requests
r = requests.get("http://example.com/myfollowers")
print("myfollowers returned: " + r.content)
for userid in range(1, 1001):
r = requests.post("http://example.com/unfollow/{}".format(userid))
print("unfollow returned: " + r.content)
是否可以使用 selenium webdriver 向服务器发送多个 HTTP POST 请求?
例如,如果用户 ID 是自动递增的,并且前 1000 个关注者关注了我,是否可以 运行 在 POST 请求不存在的站点上进行类似以下内容return 重新加载:
** 该网站显然要求用户登录才能执行此类操作,因此采用了 selenium 方法。
driver = webdriver.Firefox()
driver.get("http://example.com/myfollowers")
for userid in range(1, 1001):
driver.post("http://example.com/unfollow/{}".format(userid))
driver.close()
下面是向网站发出的 Post 请求的片段示例。
General:
Request URL:http://example.com/unfollow/1
Request Method:POST
Status Code:200 OK
Remote Address:192.168.1.1:80
Response Headers
Request headers:
Accept:*/*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:0
Cookie:ob-i=1;
Host:example.com
Origin:http://example.com
Referer:http://example.com/user/followings
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.26.02 Safari/537.36
X-Requested-With:XMLHttpRequest
不知道如何使用 selenium 网络驱动程序制作它。但您可以使用 AJAX 发送多个 post 请求。很简单的语言,稍微懂一点的话2天就能学会javascript。你可以从 w3schools 学习它试试看。
为什么它不起作用?
"where POST requests don't return a reload"请解释一下你的意思!
总之,requests
似乎更适合这个任务:
这是一个简单的例子:
import requests
r = requests.get("http://example.com/myfollowers")
print("myfollowers returned: " + r.content)
for userid in range(1, 1001):
r = requests.post("http://example.com/unfollow/{}".format(userid))
print("unfollow returned: " + r.content)