authentication with urllib3












3















I am trying to connect to a webpage using urllib3. The code is provided below.



import urllib3
http=urllib3.PoolManager()
fields={'username':'abc','password':'xyz'}
r=http.request('GET',url,fields)


If we assume that url is some webpage which needs to be authenticated using username and password, am i using the right code to authenticate ?



I have did this using urllib2 very comfortably but i was not able to do the same thing using urllib3.



Many Thanks










share|improve this question





























    3















    I am trying to connect to a webpage using urllib3. The code is provided below.



    import urllib3
    http=urllib3.PoolManager()
    fields={'username':'abc','password':'xyz'}
    r=http.request('GET',url,fields)


    If we assume that url is some webpage which needs to be authenticated using username and password, am i using the right code to authenticate ?



    I have did this using urllib2 very comfortably but i was not able to do the same thing using urllib3.



    Many Thanks










    share|improve this question



























      3












      3








      3


      1






      I am trying to connect to a webpage using urllib3. The code is provided below.



      import urllib3
      http=urllib3.PoolManager()
      fields={'username':'abc','password':'xyz'}
      r=http.request('GET',url,fields)


      If we assume that url is some webpage which needs to be authenticated using username and password, am i using the right code to authenticate ?



      I have did this using urllib2 very comfortably but i was not able to do the same thing using urllib3.



      Many Thanks










      share|improve this question
















      I am trying to connect to a webpage using urllib3. The code is provided below.



      import urllib3
      http=urllib3.PoolManager()
      fields={'username':'abc','password':'xyz'}
      r=http.request('GET',url,fields)


      If we assume that url is some webpage which needs to be authenticated using username and password, am i using the right code to authenticate ?



      I have did this using urllib2 very comfortably but i was not able to do the same thing using urllib3.



      Many Thanks







      python authentication urllib3






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 31 '18 at 11:22









      Mike Woodhouse

      43.5k1279119




      43.5k1279119










      asked Jul 4 '12 at 21:58









      kichkich

      3542620




      3542620
























          1 Answer
          1






          active

          oldest

          votes


















          12














          Assuming you're trying to do Basic Authentication, then you need to put the username and password encoded in an authorization header. Here's one way to do that using the urllib3.util.make_headers helper:



          import urllib3

          http = urllib3.PoolManager()
          url = '...'
          headers = urllib3.util.make_headers(basic_auth='abc:xyz')
          r = http.request('GET', url, headers=headers)





          share|improve this answer


























          • When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

            – kassold
            May 20 '14 at 16:53











          • I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

            – kassold
            May 20 '14 at 17:07








          • 1





            @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

            – shazow
            May 20 '14 at 22:23













          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f11335825%2fauthentication-with-urllib3%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          12














          Assuming you're trying to do Basic Authentication, then you need to put the username and password encoded in an authorization header. Here's one way to do that using the urllib3.util.make_headers helper:



          import urllib3

          http = urllib3.PoolManager()
          url = '...'
          headers = urllib3.util.make_headers(basic_auth='abc:xyz')
          r = http.request('GET', url, headers=headers)





          share|improve this answer


























          • When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

            – kassold
            May 20 '14 at 16:53











          • I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

            – kassold
            May 20 '14 at 17:07








          • 1





            @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

            – shazow
            May 20 '14 at 22:23


















          12














          Assuming you're trying to do Basic Authentication, then you need to put the username and password encoded in an authorization header. Here's one way to do that using the urllib3.util.make_headers helper:



          import urllib3

          http = urllib3.PoolManager()
          url = '...'
          headers = urllib3.util.make_headers(basic_auth='abc:xyz')
          r = http.request('GET', url, headers=headers)





          share|improve this answer


























          • When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

            – kassold
            May 20 '14 at 16:53











          • I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

            – kassold
            May 20 '14 at 17:07








          • 1





            @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

            – shazow
            May 20 '14 at 22:23
















          12












          12








          12







          Assuming you're trying to do Basic Authentication, then you need to put the username and password encoded in an authorization header. Here's one way to do that using the urllib3.util.make_headers helper:



          import urllib3

          http = urllib3.PoolManager()
          url = '...'
          headers = urllib3.util.make_headers(basic_auth='abc:xyz')
          r = http.request('GET', url, headers=headers)





          share|improve this answer















          Assuming you're trying to do Basic Authentication, then you need to put the username and password encoded in an authorization header. Here's one way to do that using the urllib3.util.make_headers helper:



          import urllib3

          http = urllib3.PoolManager()
          url = '...'
          headers = urllib3.util.make_headers(basic_auth='abc:xyz')
          r = http.request('GET', url, headers=headers)






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited May 20 '14 at 22:22

























          answered Jul 9 '12 at 2:56









          shazowshazow

          8,25711726




          8,25711726













          • When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

            – kassold
            May 20 '14 at 16:53











          • I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

            – kassold
            May 20 '14 at 17:07








          • 1





            @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

            – shazow
            May 20 '14 at 22:23





















          • When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

            – kassold
            May 20 '14 at 16:53











          • I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

            – kassold
            May 20 '14 at 17:07








          • 1





            @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

            – shazow
            May 20 '14 at 22:23



















          When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

          – kassold
          May 20 '14 at 16:53





          When using make_headers, how do I set a 'Cache-Control' header? If that is not possible, how do I construct a header with both authentication and caching control?

          – kassold
          May 20 '14 at 16:53













          I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

          – kassold
          May 20 '14 at 17:07







          I guess is like this: headers = {'Authorization':'Basic %s' % b64encode('user:pass'), 'Cache-Control':'no-cache,max-age=0', 'Pragma':'no-cache'}

          – kassold
          May 20 '14 at 17:07






          1




          1





          @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

          – shazow
          May 20 '14 at 22:23







          @kassold Our make_headers helpers doesn't have a mode for modifying the cache control. I would be +1 to adding something like this if you'd be interested in making a PR. :) (Opened an issue here github.com/shazow/urllib3/issues/393)

          – shazow
          May 20 '14 at 22:23




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f11335825%2fauthentication-with-urllib3%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Monofisismo

          Angular Downloading a file using contenturl with Basic Authentication

          Olmecas