将多个URL(字符串)传递到一个request.get语句Python中

时间:2017-05-17 01:57:19

标签: python

我正在尝试使用两个url的request.get语句。我的目标是让请求(Python模块)基于列表或我提供的两个字符串发出两个请求。如何将列表中的多个字符串传递给request.get语句,并将请求发送到每个URL(字符串)并执行某些操作? 感谢

2 个答案:

答案 0 :(得分:1)

通常,如果我们谈论python请求库,它一次只运行一个url get请求。如果您要执行的操作是使用已知网址列表执行多个请求,那么这很容易。

import requests

my_links = ['www.google.com', 'www.yahoo.com']
my_responses = []
for link in my_links:
    payload = requests.get(link).json()
    print('got response from {}'.format(link))
    my_response.append(payload)
    print(payload)

my_responses现在拥有页面中的所有内容。

答案 1 :(得分:0)

你没有。 requests.get()方法(或任何其他方法,实际上)采用单个URL并发出单个HTTP请求,因为这是大多数人希望它做的事情。

如果您需要发出两个请求,则必须调用该方法两次。

  import java.io.IOException;

public class DirectMessengerCombined
{
    public static void main(String[] args) throws IOException
    {

        DirectMessengerClient client1 = null;
        DirectMessengerServer server1 = null;

          for (int i = 0; i < args.length; i++)
          {

              if (args.length == 1) 
              {
                 client1  = new DirectMessengerClient(args);
                 client1.ClientRun(args);
              }
              else if (args.length == 2)
              {
                 server1 = new DirectMessengerServer(args);
                 server1.ServerRun(args);
              }
           i=args.length + 20;
          } 
    }

}

当然,这些调用是同步的,第二次调用仅在收到第一个响应后开始。