반응형
나는 며칠 동안 아름다운 수프를 가지고 놀고 웹 페이지를 분석했습니다. 나는 내가 작성하는 모든 스크립트에서 나의 구세주가 된 한 줄의 코드를 사용 해왔다. 코드 줄은 다음과 같습니다.
r = requests.get('some_url', auth=('my_username', 'my_password')).
하지만 ...
(인증을 사용하여 URL 열기)를 사용하여 동일한 작업을 수행하고 싶습니다.
(1) sauce = urllib.request.urlopen(url).read() (1)
(2) soup = bs.BeautifulSoup(sauce,"html.parser") (2)
URL을 열고 인증이 필요한 웹 페이지를 읽을 수 없습니다. 다음과 같은 것을 어떻게 얻을 수 있습니까?
(3) sauce = urllib.request.urlopen(url, auth=(username, password)).read() (3)
instead of (1)
해결 방법
# create a password manager
password_mgr = urllib.request.HTTPPasswordMgrWithDefaultRealm()
# Add the username and password.
# If we knew the realm, we could use it instead of None.
top_level_url = "http://example.com/foo/"
password_mgr.add_password(None, top_level_url, username, password)
handler = urllib.request.HTTPBasicAuthHandler(password_mgr)
# create "opener" (OpenerDirector instance)
opener = urllib.request.build_opener(handler)
# use the opener to fetch a URL
opener.open(a_url)
# Install the opener.
# Now all calls to urllib.request.urlopen use our opener.
urllib.request.install_opener(opener)
참조 페이지 https://stackoverflow.com/questions/44239822
반응형
'파이썬' 카테고리의 다른 글
파이썬 모듈이 Python에 설치되었는지 확인하고 그렇지 않은 경우 코드 내에 설치하는 방법은 무엇입니까? (0) | 2020.10.20 |
---|---|
파이썬 Kivy가 작동하지 않음 (오류 : 중요한 Window 공급자를 찾을 수 없습니다.) (0) | 2020.10.20 |
파이썬 목록에서 첫 번째 항목을 제거하는 방법은 무엇입니까? (0) | 2020.10.20 |
파이썬 bash에서 파이썬 스크립트를 "파이프 가능"하게 만드는 방법은 무엇입니까? (0) | 2020.10.20 |
파이썬의 데이터 프레임 행에서 최대 값 가져 오기 (0) | 2020.10.20 |
댓글