I am writing a python script where I right-click a file, click on a context menu item. On clicking it opens a webpage. I have to validate the url of the webpage. How do I shift my control from OS to the browser and get Current URL.
1 に答える
3
requests.get(url) を呼び出して、応答コードを確認してみてください。別のオプションは、 request.head(url) を呼び出すことです
>>> import requests
>>> url1 = 'http://example.com'
>>> url2 = 'http://sdsdsdsdsdss.com'
>>> r = requests.head(url1)
>>> r.status_code
200
>>> r = requests.head(url2, timeout=5)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 77, in head
return request('head', url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 44, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 383, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 486, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 387, in send
raise Timeout(e)
requests.exceptions.Timeout: (<urllib3.connectionpool.HTTPConnectionPool object at 0x7f4e77635950>, 'Connection to sdsdsdsdsdss.com timed out. (connect timeout=5)')
>>>
例外を処理する必要があります。requests モジュールの詳細: http://docs.python-requests.org/en/latest/
本当に Web ブラウザを開く必要がある場合は、次のライブラリを使用できます: https://docs.python.org/2/library/webbrowser.html
于 2014-08-07T11:07:24.523 に答える