HTTP Error 403: Forbidden while downloading file using urllib
I have this line of code: urllib.request.urlretrieve('http://lolupdater.com/downloads/LPB.exe', 'LPBtest.exe')
, but when I run it, it throws an error urllib.error.HTTPError: HTTP Error 403: Forbidden
.
python-3.x file download urllib
add a comment |
I have this line of code: urllib.request.urlretrieve('http://lolupdater.com/downloads/LPB.exe', 'LPBtest.exe')
, but when I run it, it throws an error urllib.error.HTTPError: HTTP Error 403: Forbidden
.
python-3.x file download urllib
add a comment |
I have this line of code: urllib.request.urlretrieve('http://lolupdater.com/downloads/LPB.exe', 'LPBtest.exe')
, but when I run it, it throws an error urllib.error.HTTPError: HTTP Error 403: Forbidden
.
python-3.x file download urllib
I have this line of code: urllib.request.urlretrieve('http://lolupdater.com/downloads/LPB.exe', 'LPBtest.exe')
, but when I run it, it throws an error urllib.error.HTTPError: HTTP Error 403: Forbidden
.
python-3.x file download urllib
python-3.x file download urllib
edited Nov 11 at 22:11
Trilarion
6,51753876
6,51753876
asked Jul 27 '17 at 18:09
Jakub Bláha
455225
455225
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
That looks to be an actual HTTP 403: Forbidden
error. Python urllib
throws the exception when it encounters an HTTP status code (documented here). 403
in general means: "The server understood the request, but is refusing to fulfill it." You will need to add HTTP headers to identify yourself and avoid the 403
error, documentation on Python urllib headers. Here is an example using urlopen
:
import urllib.request
req = urllib.request.Request('http://lolupdater.com/downloads/LPB.exe', headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req)
With Python 3 urllib.urlretrieve()
is considered legacy. I would recommend Python Requests for this, here is a working example:
import requests
url = 'http://lolupdater.com/downloads/LPB.exe'
r = requests.get(url)
with open('LPBtest.exe', 'wb') as outfile:
outfile.write(r.content)
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks likeurllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.
– andrew
Jul 27 '17 at 19:57
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f45358126%2fhttp-error-403-forbidden-while-downloading-file-using-urllib%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
That looks to be an actual HTTP 403: Forbidden
error. Python urllib
throws the exception when it encounters an HTTP status code (documented here). 403
in general means: "The server understood the request, but is refusing to fulfill it." You will need to add HTTP headers to identify yourself and avoid the 403
error, documentation on Python urllib headers. Here is an example using urlopen
:
import urllib.request
req = urllib.request.Request('http://lolupdater.com/downloads/LPB.exe', headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req)
With Python 3 urllib.urlretrieve()
is considered legacy. I would recommend Python Requests for this, here is a working example:
import requests
url = 'http://lolupdater.com/downloads/LPB.exe'
r = requests.get(url)
with open('LPBtest.exe', 'wb') as outfile:
outfile.write(r.content)
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks likeurllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.
– andrew
Jul 27 '17 at 19:57
add a comment |
That looks to be an actual HTTP 403: Forbidden
error. Python urllib
throws the exception when it encounters an HTTP status code (documented here). 403
in general means: "The server understood the request, but is refusing to fulfill it." You will need to add HTTP headers to identify yourself and avoid the 403
error, documentation on Python urllib headers. Here is an example using urlopen
:
import urllib.request
req = urllib.request.Request('http://lolupdater.com/downloads/LPB.exe', headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req)
With Python 3 urllib.urlretrieve()
is considered legacy. I would recommend Python Requests for this, here is a working example:
import requests
url = 'http://lolupdater.com/downloads/LPB.exe'
r = requests.get(url)
with open('LPBtest.exe', 'wb') as outfile:
outfile.write(r.content)
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks likeurllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.
– andrew
Jul 27 '17 at 19:57
add a comment |
That looks to be an actual HTTP 403: Forbidden
error. Python urllib
throws the exception when it encounters an HTTP status code (documented here). 403
in general means: "The server understood the request, but is refusing to fulfill it." You will need to add HTTP headers to identify yourself and avoid the 403
error, documentation on Python urllib headers. Here is an example using urlopen
:
import urllib.request
req = urllib.request.Request('http://lolupdater.com/downloads/LPB.exe', headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req)
With Python 3 urllib.urlretrieve()
is considered legacy. I would recommend Python Requests for this, here is a working example:
import requests
url = 'http://lolupdater.com/downloads/LPB.exe'
r = requests.get(url)
with open('LPBtest.exe', 'wb') as outfile:
outfile.write(r.content)
That looks to be an actual HTTP 403: Forbidden
error. Python urllib
throws the exception when it encounters an HTTP status code (documented here). 403
in general means: "The server understood the request, but is refusing to fulfill it." You will need to add HTTP headers to identify yourself and avoid the 403
error, documentation on Python urllib headers. Here is an example using urlopen
:
import urllib.request
req = urllib.request.Request('http://lolupdater.com/downloads/LPB.exe', headers={'User-Agent': 'Mozilla/5.0'})
response = urllib.request.urlopen(req)
With Python 3 urllib.urlretrieve()
is considered legacy. I would recommend Python Requests for this, here is a working example:
import requests
url = 'http://lolupdater.com/downloads/LPB.exe'
r = requests.get(url)
with open('LPBtest.exe', 'wb') as outfile:
outfile.write(r.content)
edited Jul 27 '17 at 19:54
answered Jul 27 '17 at 18:49
andrew
1,69011323
1,69011323
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks likeurllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.
– andrew
Jul 27 '17 at 19:57
add a comment |
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks likeurllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.
– andrew
Jul 27 '17 at 19:57
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
But how to save the data than if I have an executable?
– Jakub Bláha
Jul 27 '17 at 19:05
@JakubBláha I updated my answer. It looks like
urllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.– andrew
Jul 27 '17 at 19:57
@JakubBláha I updated my answer. It looks like
urllib.urlretrieve()
doesn't allow you to set headers. I would recommend using Python Requests, its definitely the more accepted way to do what you are trying to do, hope it helps.– andrew
Jul 27 '17 at 19:57
add a comment |
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f45358126%2fhttp-error-403-forbidden-while-downloading-file-using-urllib%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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