在Python,有什么之间的差异urllib,urllib2以及urllib3模块?为什么有三个?他们似乎做同样的事情......
这是我的代码:
import urllib2.request
response = urllib2.urlopen("http://www.google.com")
html = response.read()
print(html)
Run Code Online (Sandbox Code Playgroud)
有帮助吗?
这是我在python 3中使用urllib的问题.
我编写了一段在Python 2.7中运行良好且使用urllib2的代码.它转到Internet上的页面(需要授权)并从该页面抓取我的信息.
对我来说真正的问题是我无法使我的代码在python 3.4中工作,因为没有urllib2,而urllib的工作方式不同; 即使经过几个小时的谷歌搜索和阅读,我什么也没得到.所以,如果有人能帮助我解决这个问题,我真的很感激帮助.
这是我的代码:
request = urllib2.Request('http://mysite/admin/index.cgi?index=127')
base64string = base64.encodestring('%s:%s' % ('login', 'password')).replace('\n', '')
request.add_header("Authorization", "Basic %s" % base64string)
result = urllib2.urlopen(request)
resulttext = result.read()
Run Code Online (Sandbox Code Playgroud) 我正在使用 ngrok 在树莓派上公开我的本地主机,并且 ngrok 受密码保护。我在网络之外的另一台计算机上使用 Django 来访问此树莓派上的网页(简单服务器)。我不想手动输入 ngrok 的用户名和密码。
如何自动填写 ngrok 用户/密码,这是 chrome 中的一个弹出窗口,要求输入用户名和密码?
我尝试过的:我首先尝试在我的模板中使用 JS,只是使用 fetch 请求:
https://user:password@myngrokdomain.ngrok.io但是 chrome 在控制台中抛出一个错误,说我无法像这样以纯文本形式传递凭据,理所当然......
然后我尝试使用 python requests:
UN= "myuser"
PWD = "mypassword"
loginURL = "https://myngrokdomain.ngrok.io"
client = requests.session()
login_data = dict(username=UN, password=PWD,)
r = client.post(loginURL, data=login_data)
Run Code Online (Sandbox Code Playgroud)
这返回了 401 访问被拒绝
r.headers + r.reason返回:
401 Unauthorized Unauthorized {'Content-Length': '16', 'Content-Type': 'text/plain', 'Www-Authenticate': 'Basic realm="ngrok"', 'Date': 'Tue, 16 Mar 2021 15:22:15 GMT'}