ImportError: Tidak ada modul bernama win32com.client

88

Saat ini saya menggunakan python 2.7 dan mencoba membuka lembar Excel. Saat menggunakan kode di bawah ini:

import os
from win32com.client import Dispatch

xlApp = win32com.client.Dispatch("Excel.Application")
xlApp.Visible = True
# Open the file we want in Excel
workbook = xlApp.Workbooks.Open('example.xls')

Saya mendapatkan kesalahan ini:

ImportError: Tidak ada modul bernama win32com.client

Apakah ada kemungkinan mendapatkan kesalahan karena saya menggunakan mesin Windows 64-bit?

pengguna3194189
sumber
4
Hanya memeriksa, apakah Anda menginstal ekstensi: sourceforge.net/projects/pywin32 Ini bukan perpustakaan standar.
Dair
2
Pertanyaan Anda telah dijawab di sini: superuser.com/questions/609447/… dan di sini: stackoverflow.com/questions/7978510/…
Jordy19
Perhatikan bahwa kode di atas memberikan kesalahan meskipun win32com dipasang dengan benar. Baris ke-3 harus xlApp = Dispatch ("Excel.Application")
ger.s.brett

Jawaban:

150

pip install pywin32tidak berhasil untuk saya tetapi pypiwin32berhasil.

Mitch44
sumber
9
Jika Anda tidak dapat menemukan pip pada baris perintah, ini juga berfungsi: 'python -m pip install pypiwin32'
RoyM
2
Tak satu pun dari ini berhasil untuk saya. Saya mencoba pypiwin32 dan pywin32 dan keduanya tidak berhasil.
Tiskolin
11
Saya mendapatkan kesalahan: Tidak dapat menemukan versi yang memenuhi persyaratan pywin32> = 223 (dari pypiwin32) (dari versi :) Tidak ada distribusi yang cocok untuk pywin32> = 223 (dari pypiwin32) meskipun saya menggunakan Python 2.7.10 - apakah ada yang tahu bagaimana melakukannya?
MACC
@MACC Mengalami masalah yang sama, tetapi saya menjalankan dua versi python dan saya pikir mereka semakin bingung. Apakah Anda pernah mengetahuinya?
daniel9x
26

win32com.client adalah bagian dari pywin32

Jadi, unduh pywin32 dari sini

Nishant Thapliyal
sumber
17

Coba perintah ini:

pip install pywin32

Catatan

Jika itu memberikan kesalahan berikut:

Tidak dapat menemukan versi yang memenuhi persyaratan pywin32> = 223 (dari pypiwin32) (dari versi :)
Tidak ada distribusi yang cocok untuk pywin32> = 223 (dari pypiwin32)

tingkatkan 'pip', menggunakan:

pip install --upgrade pip
Anil MS
sumber
11

Coba keduanya pip install pywin32danpip install pypiwin32 .

Berhasil.

janani selvan
sumber
6

Saya menyadari posting ini sudah tua tetapi saya ingin menambahkan bahwa saya harus mengambil langkah ekstra agar ini berfungsi.

Daripada hanya melakukan:

pip install pywin32

Saya telah menggunakan menggunakan -mbendera agar ini berfungsi dengan benar. Tanpa itu saya mengalami masalah di mana saya masih mendapatkan kesalahanImportError: No module named win32com .

Jadi untuk memperbaikinya, Anda dapat mencoba ini:

python -m pip install pywin32

Ini bekerja untuk saya dan telah bekerja pada beberapa versi python di mana hanya melakukan pip install pywin32tidak berhasil.

Versi diuji pada:

3.6.2, 3.7.6, 3.8.0, 3.9.0a1.

Mike - SMT
sumber
0

Coba instal file "pywin32", Anda dapat menemukannya di https://github.com/mhammond/pywin32/releases

Instal versi yang Anda gunakan di IDLE Anda, dan coba instal, setelah Anda dapat membuka proyek Anda dan menyusun giliran lain!

terima kasih!

Spongebob
sumber
0

dalam beberapa kasus di mana pywin32 bukan referensi langsung dan pustaka lain memerlukan pywin32-ctypes untuk diinstal; menyebabkan "ImportError: Tidak ada modul bernama win32com" saat aplikasi dibundel dengan pyinstaller.

menjalankan perintah berikut menyelesaikan pada python 3.7 - pyinstaller 3.6

pip install pywin32==227
oetzi
sumber