sunlight FoundationからこのAPIのURLを開き、jsonのページからデータを返そうとしています。これは、Iapiが生成したコードから、myapikeyの周りの括弧を引いたものです。
import urllib.request.urlopen
import json
urllib.request.urlopen("https://sunlightlabs.github.io/congress/legislators?api_key='(myapikey)")
このエラーが発生する
Traceback (most recent call last):
File "<input>", line 1, in <module>
ImportError: No module named request.urlopen
私は何が間違っていますか? ive https://docs.python.org/3/library/urllib.request.html を調査しましたが、まだ進歩していません
from urllib.request import urlopen
を使用する必要があります。また、接続を開くときにwith
ステートメントを使用することをお勧めします。
from urllib.request import urlopen
with urlopen("https://sunlightlabs.github.io/congress/legislators?api_key='(myapikey)") as conn:
# dosomething
In Python 3この方法で実装できます:
import urllib.request
u = urllib.request.urlopen("xxxx")#The url you want to open
注意:一部IDE can import urllib
(スパイダー)直接、一部はimport urllib.request
(PyCharm)。
これは、必要な部分を明示的にインポートする必要がある場合があるため、その一部だけを必要とする場合にモジュールがすべてをロードする必要がないためです。
これが役立つことを願っています。
from urllib.request import urlopen
from bs4 import BeautifulSoup
wiki = "https://en.wikipedia.org/wiki/List_of_state_and_union_territory_capitals_in_India"
page = urlopen(wiki)
soup = BeautifulSoup(page, "html.parser" ).encode('UTF-8')
print (soup)
urllib.request
はモジュールですが、urlopen
は関数です。このリンクを確認してください。疑問を解消するのに役立ちます。 https://docs.python.org/3.0/library/urllib.request.html