kegagalan koneksi pip: tidak dapat mengambil URL basis indeks http://pypi.python.org/simple/


89

Saya menjalankan sudo pip install git-review, dan mendapatkan pesan berikut:

Downloading/unpacking git-review
  Cannot fetch index base URL http://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement git-review
No distributions at all found for git-review
Storing complete log in /home/sai/.pip/pip.log

Apakah ada yang tahu tentang ini?


4
Harus berupa koneksi proxy
Ossama

1
"tidak satupun dari mereka tampaknya memecahkan masalah saya" Yang mana ini? Agar kita tidak mengulangi diri kita sendiri.
RandomSeed

Jawaban:


143

Saya tahu ini adalah utas lama, tetapi saya mengalami masalah ini hari ini dan ingin membagikan solusi saya untuk masalah tersebut karena saya belum melihat solusi ini di tempat lain di SO.

Lingkungan saya: Python 2.7.12 / 2.7.14 di Ubuntu 12.04.5 LTS di virtualenv, pip versi 1.1.

Kesalahan Saya:

pip install nose

di konsol:

Cannot fetch index base URL http://pypi.python.org/simple/

di ~ / .pip / pip.log:

Could not fetch URL http://pypi.python.org/simple/: HTTP Error 403: SSL is required

Penasaran bagi saya karena saya telah menjalankan perintah yang sama ini dalam skrip tanpa masalah selama sekitar satu tahun.

ini memperbaikinya:

pip install --index-url=https://pypi.python.org/simple/ nose

(perhatikan https)

Semoga ini bisa membantu seseorang!


Terima kasih banyak! Saya juga mengalami masalah ini di Ubuntu 12.04, yang sudah pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)terpasang, yang secara efektif tidak dapat digunakan.
Josh Kupershmidt

Anda tuan layak mendapatkan medali. Saya mengalami masalah ini pada beaglebone saya yang hitam. Sekarang sudah diperbaiki.
Aditya Shekhawat

Banyak jawaban disini. Tak satu pun dari mereka yang relevan / bekerja-untuk-saya kecuali yang ini. Terima kasih!
arielf

pip install --index-url=http://mypypi.net/simple/melempar kesalahanERROR: You must give at least one requirement to install (see "pip help install")
Bingung pada

@Confounded - Terima kasih telah menunjukkannya, cukup daftarkan paket yang ingin Anda instal setelah opsi --index-url. Lihat pembaruan sebagai contoh.
mattdedek

59

Anda perlu mengupgrade instalasi pip Anda .

Opsi --index-url(versi singkat -i:) memungkinkan Anda menentukan indeks-url dalam panggilan ke pip itu sendiri, di sana Anda dapat menggunakan varian https. Kemudian Anda dapat menginstruksikan pip untuk mengupgrade dirinya sendiri.

sudo pip install --index-url https://pypi.python.org/simple/ --upgrade pip

Setelah itu, Anda bisa menggunakan pip tanpa --index-urlopsi.


Saya yakin bahwa rilis 7.0.0 (2015-05-21) memicu masalah ini. Catatan rilis untuk versi tersebut menyatakan sebagai berikut:

BACKWARD INSOMPATIBLE Tidak lagi secara implisit mendukung asal yang tidak aman, dan sebaliknya mengharuskan asal yang tidak aman dipercaya secara eksplisit dengan --trusted-hostopsi.

Anda dapat memeriksa versi pip Anda dengan pip --version.

Ini berarti bahwa menerbitkan sudo pip install --trusted-host --upgrade pipsatu kali juga akan menyelesaikan masalah ini, meskipun mengunduh pip melalui http yang tidak aman. Ini mungkin juga tidak berfungsi sama sekali, karena ada kemungkinan titik akhir yang tidak aman tidak lagi dapat diakses di server (saya belum menguji ini).


42

EDIT:

Versi saat ini PIPtidak lagi memiliki masalah ini. Saat ini, versi: 7.1.2adalah versi saat ini. Ini PIPtautannya:

https://pypi.python.org/pypi/pip

PERBAIKAN ASLI:

Saya mendapat masalah ini saat mencoba menggunakan pip==1.5.4

Ini adalah masalah yang terkait dengan sertifikat SSL yang mempercayai PIP dan PYPI Python. Jika Anda melihat log PIP di Mac OS X di: /Users/username/.pip/pip.log, ini akan memberi Anda detail lebih lanjut.

Solusi saya untuk mendapatkan PIP kembali dan berjalan setelah berjam-jam mencoba hal yang berbeda adalah dengan masuk ke paket situs saya dengan Python apakah itu dalam virtualenv atau dalam paket situs normal Anda , dan menyingkirkan versi PIP saat ini. Bagi saya, saya punyapip==1.5.4

Saya menghapus direktori PIP dan file telur PIP. Lalu aku lari

easy_install pip==1.2.1  

Versi PIP ini tidak memiliki masalah SSL, dan kemudian saya dapat pergi dan menjalankan normal pip install -r requirements.txtsaya dalam virtualenv saya untuk mengatur semua paket yang saya inginkan yang terdaftar di requirements.txtfile saya .

Ini juga merupakan peretasan yang disarankan untuk menyampaikan masalah oleh beberapa orang di Google Grup ini yang saya temukan:

https://groups.google.com/forum/#!topic/beagleboard/aSlPCNYcVjw


Memperbaiki masalah untuk saya juga.
HorseloverFat

6
FYI, jika Anda membaca ini sekarang (seperti yang saya lakukan), Anda harus mengupgrade pip daripada menurunkannya. Saya sangat terkejut saat menyadari bahwa saya tertinggal 5 versi utama (sekarang kami menggunakan versi 6.0.8). Memutakhirkan memperbaiki masalah :)
Dr. Acula

@ Dr.Acula Anda benar. Saya telah memperbarui jawaban saya. Terima kasih.
Aaron Lelevier

"Anda harus mengupgrade pip" Saya tidak dapat mengupgrade pip karena alasan yang sama bahwa saya tidak dapat menginstal paket; HTTP Error 403: SSL is required
pengguna5359531

9
@ user5359531 Unduh pip tarball dari PyPI dan lakukan pip install pip-x.x.x.tar.gz.
Pelle Nilsson

13

Saya menambahkan opsi baris perintah --proxy untuk menunjuk ke proxy dan itu berfungsi (versi pip 1.5.4 dan python 2.7). untuk beberapa alasan itu tidak mengambil variabel shell env HTTPS_PROXY, HTTP_PROXY, https_proxy, http_proxy.

sudo pip --proxy [user:passwd@]proxy.server:port install git-review

apakah tanda kurung siku di sekitar pengguna diperlukan? mengapa simbol @ digunakan setelah kata sandi?
pengguna13107

12

Periksa koneksi proxy Anda, saya memiliki masalah serupa, lalu saya mengubah koneksi saya yang tidak di-proxy dan boom, itu mulai mengunduh dan mengatur perpustakaan


1
Bagaimana Anda mengubah koneksi proksi Anda agar berfungsi? Saya mengalami masalah yang sama.
Aaron Lelevier

Saya menghapus proxy dan mengubah koneksi ke satu tanpa proxy dan kemudian setelah menginstal saya mengubah kembali ke koneksi kerja
Ossama

Saya menghadapi masalah yang sama dan saya cukup yakin ini adalah masalah proxy. Apakah ada solusi selain menggunakan koneksi lain?
shaunakde

Saya menambatkan ke ponsel saya untuk mengetahui proxy perusahaan saya. Solusi bagus.
HuckIt

1
Masalah saya adalah Fiddler terbuka (dan saya telah mengonfigurasi Fiddler untuk mendekripsi lalu lintas HTTPS). Saya menutup Fiddler dan berfungsi dengan baik.
AJ Richardson

6

Saya memiliki masalah yang sama dengan pip==1.5.6. Saya harus memperbaiki waktu sistem saya.

# date -s "2014-12-09 10:09:50"

1
Cara lain untuk memperbaiki waktu sistem adalah dengan menggunakan daemon ntp.
Jaime M.

bekerja dengan baik untuk saya, saya senang ini mudah diperbaiki
jamescampbell

6

Saya memiliki masalah yang sama dengan pip 1.5.6.

Saya baru saja menghapus folder ~ / .pip dan berfungsi dengan sangat baik.

rm -r ~/.pip/

5

Ini berfungsi untuk saya di Ubuntu 12.04.

pip install --index-url=https://pypi.python.org/simple/ -U scikit-learn

4

Jika itu bukan masalah proxy / jaringan, Anda harus mencoba membuat / mengedit file konfigurasi .pip/pip.confatau jika Anda menjalankan pip sebagai root /root/.pip/pip.conf. Periksa dan ubah index-url dari http menjadi https .

Seharusnya seperti ini:

[global] 
index-url=https://pypi.python.org/simple/

Bekerja untuk saya dengan Ubuntu 12 dan pip 9.0.1



2

Saya dapat memperbaikinya dengan memutakhirkan python saya, yang sebelumnya telah dilampirkan ke versi OpenSSL yang sudah ketinggalan zaman. Sekarang menggunakan 1.0.1h-1 dan paket saya akan menginstal pip.

FYI, log dan perintah saya, menggunakan anaconda dan menginstal paket pytest-ipynb [1]:


$ conda update python
Fetching package metadata: ....
Solving package specifications: .
Package plan for installation in environment /Users/me/anaconda/envs/py27:

The following NEW packages will be INSTALLED: openssl: 1.0.1h-1

The following packages will be UPDATED: python: 2.7.5-3 --> 2.7.8-1 readline: 6.2-1 --> 6.2-2 sqlite: 3.7.13-1 --> 3.8.4.1-0 tk: 8.5.13-1 --> 8.5.15-0

Proceed ([y]/n)? y Unlinking packages ... [ COMPLETE ] |#############################################################| 100% Linking packages ... [ COMPLETE ] |#############################################################| 100%

$ pip install pytest-ipynb Downloading/unpacking pytest-ipynb Downloading pytest-ipynb-0.1.1.tar.gz Running setup.py (path:/private/var/folders/4f/b8gwyhg905x94twqw2pbklyw0000gn/T/pip_build_me/pytest-ipynb/setup.py) egg_info for package pytest-ipynb

Requirement already satisfied (use --upgrade to upgrade): pytest in /Users/me/anaconda/envs/py27/lib/python2.7/site-packages (from pytest-ipynb) Installing collected packages: pytest-ipynb Running setup.py install for pytest-ipynb

Successfully installed pytest-ipynb Cleaning up...

[1] Tiket saya tentang masalah ini; https://github.com/zonca/pytest-ipynb/issues/1


Maaf, saya tidak yakin mengapa pemformatan menambahkan begitu banyak baris kosong?
AnneTheAgile

1

Saya menghadapi masalah yang sama tetapi itu terkait proxy. itu diselesaikan dengan mengatur proxy.

Set http_proxy=http://myuserid:mypassword@myproxyname:myproxyport
Set https_proxy=http://myuserid:mypassword@myproxyname:myproxyport

Ini mungkin membantu seseorang.


1

Jika proxy Anda dikonfigurasi dengan benar, pip versi 1.5.6 akan menanganinya dengan benar. Bug telah teratasi.

Anda dapat mengupgrade pip dengan easy_install pip==1.5.6


1

Jawaban ekstra: jika Anda melakukan ini dari chroot .

Anda membutuhkan sumber nomor acak untuk dapat membuat sambungan aman ke pypi.

Di linux, Anda dapat mengikat-mount host dev ke chroot dev:

mount --bind /dev /path-to-chroot/dev

1

Saya juga mendapat kesalahan ini saat menginstal pyinstaller dalam koneksi proksi. Saya hanya menghubungkan koneksi Internet langsung (Menggunakan dongle saya) dan melakukannya lagi.

 sudo pip install pyinstaller

Ini berhasil untuk saya.


1

Anda mungkin kehilangan conf server DNS di /etc/resolv.conf

pastikan Anda dapat melakukan ping ke: ping pypi.python.org

jika Anda tidak mendapatkan ping, coba tambahkan server DNS ke file ... sesuatu seperti:

server nama xxx.xxx.xxx.xxx


1

Penjelasan / pertanyaan saya adalah untuk lingkungan windows .
Saya cukup baru mengenal python, dan ini untuk seseorang yang masih pemula selain saya.
Saya menginstal pip terbaru (paket pemasang python) dan mengunduh binari yang kompatibel dengan 32 bit / 64 bit (sumber terbuka) dari http://www.lfd.uci.edu/~gohlke/pythonlibs/ , dan berhasil.

Langkah-langkah yang diikuti untuk menginstal pip, meskipun biasanya pip diinstal secara default selama instalasi python dari www.python.org/downloads/
- Unduh pip-7.1.0.tar.gz dari https://pypi.python.org/pypi/pip .
- Unzip dan un-tar file di atas.
- Di folder pip-7.1.0, jalankan: python setup.py install. Versi terbaru pip yang diinstal ini.

Gunakan pip untuk menginstal paket biner (operasi yang memungkinkan). Jalankan aplikasi pip untuk melakukan pekerjaan (instal file), seperti di bawah ini:
\ python27 \ scripts \ pip2.7.exe install file_path \ file_name --proxy
Jika Anda menghadapi masalah roda (yaitu telur), gunakan file paket biner yang kompatibel . Semoga ini membantu.


1

Dalam kasus saya (Python 3.4, dalam lingkungan virtual, berjalan di bawah macOS 10.10.6) saya bahkan tidak dapat memutakhirkan pipdirinya sendiri. Bantuan datang dari jawaban SO ini dalam bentuk satu baris berikut:

curl https://bootstrap.pypa.io/get-pip.py | python

(Jika Anda tidak menggunakan lingkungan virtual, Anda mungkin perlu sudo python.)

Dengan ini saya berhasil meningkatkan pipdari Versi 1.5.6 ke Versi 10.0.0 (cukup melompat!). Versi ini tidak menggunakan TLS 1.0 atau 1.1 yang tidak lagi didukung oleh situs Python.org, dan dapat menginstal paket PyPI dengan baik. Tidak perlu ditentukan --index-url=https://pypi.python.org/simple/.


1

dalam kasus saya, saya akan menginstal django (

pip instal django

) dan memiliki masalah yang sama dengan sertifikat ssl (Tidak dapat mengambil URL basis indeks http://pypi.python.org/simple/ )

itu dari virtualenv jadi JANGAN:

PERTAMA: hapus virtualenv Anda

nonaktifkan rm -rf env

KEDUA: cek punya pip

pip3 -V

jika Anda tidak punya

sudo apt-get install python3-pip

AKHIRNYA:

instal virtualenv dengan paket nosite dan buat virenviroment Anda

sudo pip3 instal virtualenv virtualenv --no-site-packages -p /usr/bin/python3.6

. env / bin / aktifkan


0

Saya memiliki masalah serupa, tetapi dalam kasus saya, saya mendapatkan kesalahan:

Downloading/unpacking bencode
  Cannot fetch index base URL http://c.pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement bencode
No distributions at all found for bencode
Storing complete log in /home/andrew/.pip/pip.log

Dalam kasus saya, saya dapat memperbaiki kesalahan dengan mengedit ~ / .pip / pip.conf dan mengubah http://c.pypi.python.org/simple/ke http://pypi.python.org/simpledan kemudian pip berfungsi dengan baik lagi.


0

Saya mendapat pesan kesalahan ini di ~/.pip/pip.log

Could not fetch URL https://pypi.python.org/simple/: connection error: [Errno 185090050] _ssl.c:344: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib
  Will skip URL https://pypi.python.org/simple/ when looking for download links for regulargrid

Saya memperbaikinya dengan memperbarui ~/.pip/pip.conf. Ini secara tidak sengaja menunjuk ke cacert.pemfile yang tidak ada dan terlihat seperti ini

[global]
cert = /some/path/.pip/cacert.pem

0

Saya dulu menggunakan easy_install pip==1.2.1solusi tersebut tetapi saya secara acak menemukan bahwa jika Anda mengalami bug ini, Anda mungkin menginstal python versi 32-bit.

Jika Anda menginstal versi 64bit dengan menginstalnya dari sumber dan kemudian membangun virtualenv di atasnya, Anda tidak akan memiliki bug pip itu lagi.


0

Saya juga menggunakan solusi yang dipilih (menurunkan pip) untuk mengatasi masalah ini sampai saya mengalami masalah lain yang tampaknya tidak terkait yang disebabkan oleh masalah mendasar yang sama. Versi OpenSSL Python sudah usang. Periksa versi OpenSSL Anda:

python -c 'import ssl; print(ssl.OPENSSL_VERSION)'

Jika versinya adalah 0.9.7, itu harus memverifikasi bahwa OpenSSL perlu diperbarui. Jika Anda tahu cara melakukannya secara langsung, bagus (tapi tolong beri tahu saya di komentar). Jika tidak, Anda dapat mengikuti saran dalam jawaban ini , dan menginstal ulang python dari penginstal 64 bit / 32 bit alih-alih penginstal hanya 32 bit dari python.org (Saya menggunakan python 3.4.2). Saya sekarang memiliki versi OpenSSL 0.9.8, dan tidak ada masalah ini.


0

Coba lakukan penginstalan ulang pip:

curl -O https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz
tar xvfz pip-1.2.1.tar.gz
cd pip-1.2.1
python setup.py install

Jika curl tidak berfungsi, Anda akan memiliki masalah proxy, Harap perbaiki bahwa itu harus berfungsi dengan baik. Periksa setelah membuka google.com di browser Anda di linux.

Coba instal

pip install virtualenv

0

Jika Anda menggunakan firewall, pastikan koneksi keluar ke port 443 tidak diblokir, mis. Jalankan:

sudo iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

0

Saya telah menemui pertanyaan yang sama dengan Anda. Ketika saya menyadari itu mungkin disebabkan oleh versi numpy atau pip yang tidak tertandingi, saya menghapus numpy dan pip, lalu melanjutkan sebagai ' https://radimrehurek.com/gensim/install.html ' ini, akhirnya saya berhasil!


0
C:\Users\Asus>pip install matplotlib
Downloading/unpacking matplotlib
  Cannot fetch index base URL https://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement matplotlib
Cleaning up...
No distributions at all found for matplotlib
Storing debug log for failure in C:\Users\Asus\pip\pip.log

Saya menggunakan 'easy_install pip == 1.2.1' dan berfungsi dengan baik.

C:\Users\Asus>easy_install pip==1.2.1
Searching for pip==1.2.1
Reading https://pypi.python.org/simple/pip/
Best match: pip 1.2.1
Downloading ...

Kemudian menggunakan perintah ini 'pip install matplotlib'

C:\Users\Asus>pip install matplotlib
Downloading/unpacking matplotlib
  Downloading matplotlib-2.0.0b4.tar.gz (unknown size):

0

Jika Anda menjalankan perintah ini dalam kontainer Docker di Windows, itu mungkin berarti bahwa koneksi jaringan mesin buruh pelabuhan Anda sudah usang dan perlu dibangun ulang. Untuk memperbaikinya, jalankan perintah ini:

docker-machine stop
docker-machine start
@FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i

0

Saya sekarang memasukkan ini $HOME/.pip/pip.log:

Could not fetch URL https://pypi.python.org/simple/: HTTP Error 403: TLSv1.2+ is required

Saya tidak memiliki solusi langsung untuk ini, tetapi saya menyebutkannya sebagai sesuatu yang harus diperhatikan sebelum Anda membuang waktu untuk mencoba beberapa solusi lain di sini.

  • Saya jelas sudah menggunakan URL https
  • Tidak ada masalah proxy atau firewall
  • Menggunakan trusted-hosttidak mengubah apa pun (tidak tahu di mana saya mengambil ini)

Untuk apa nilainya saya opensslterlalu tua untuk dimiliki ssl.OPENSSL_VERSIONjadi mungkin itulah penjelasannya di sini.

Pada akhirnya, menghapus lingkungan virtual saya dan membuatnya kembali virtualenv --setuptools envtampaknya telah memperbaiki setidaknya pemblokir utama.

Ini ada di kotak Debian yang sangat lama, Python 2.6.6.


0

Masalah saya adalah virtualenvversi sistem .

Ketika saya membuat env dengan python3 venv semuanya bekerja. Tetapi ketika saya menggunakan virtualenv (secara default dengan python2.7) untuk membuat env saya menerima pesan kesalahan tersebut.

Dalam virtualenvversi pip dibuat 1.5.6, tetapi versi pip sistem saya adalah10.0.1

Lalu saya berlari (di luar env apa pun):

pip install virtualenv --upgrade

Itu ditingkatkan virtualenvke versi 16.0.0dan sekarang saya pip installdi envs dibuat dengan virtualenvdan python2.7bekerja dengan sempurna. Juga, pipversi di dalam env sekarang 10.0.1.

Sebelum meningkatkan:

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.