Apakah ada masalah dengan python 3?
Halo,
itu harus kompatibel dengan kedua versi Python: 2 dan 3, tetapi izinkan saya memverifikasinya. Akan kembali kepada Anda.
Hai Terima kasih atas balasan secepatnya.
Di bawah ini adalah kesalahan yang saya dapatkan
`------------------------------------------------- --------------------------
ModuleNotFoundError Traceback (panggilan terakhir terakhir)
1 impor json
2
----> 3 dari office365.runtime.auth.authentication_context impor AuthenticationContext
4 dari office365.runtime.client_request impor ClientRequest
5 dari office365.runtime.utilities.request_options impor RequestOptions
ModuleNotFoundError: Tidak ada modul bernama 'office365'`
Dan Ya, saya sudah menginstal modul pip :)
Hai, Saya telah menulis kode untuk mendapatkan informasi hanya dengan menggunakan modul Permintaan. dan saya bisa mendapatkan cookie FedAuth dan rtFa dengan sukses. Namun, itu menimbulkan kesalahan Terlarang ketika saya mencoba mendapatkan siteUsers.
Bisakah Anda membantu dalam hal ini?
`permintaan impor
url=" https://login.microsoftonline.com/extSTS.srf "
header = {'tipe konten': 'aplikasi/json'}
TopLevelUrl=' https://XXXX.sharepoint.com '
path='C:\PSR\PythonFiles\SharePointOnlineXML.txt'
isi file = buka(jalan,'r')
SharepointOnlineAuth = filecontent.read()
SharepointOnlineAuth=SharepointOnlineAuth.format('[email protected]','Password',TopLevelUrl)
response=requests.post(url,data=SharepointOnlineAuth,headers=headers)
s=str(respon.konten)
Mulai = [pos untuk pos dalam range(len(s)) if s[pos:].startswith('
Finish= [pos untuk pos dalam range(len(s)) if s[pos:].startswith('
LoginResponse=s[Mulai+40:Selesai]
url=TopLevelUrl+'/_forms/default.aspx?wa=wsignin1.0'
header = {'tipe konten': 'application/x-www-form-urlencoded'}
response=requests.post(url,data=LoginResponse,headers=header)
url=TopLevelUrl+'/_api/web/pengguna situs'
cetak (url)
_Fedauth='FedAuth={}'.format(response.cookies['FedAuth'])
_rtFa='rtFa={}'.format(response.cookies['rtFa'])
_FinalDict={'Cookie':_Fedauth+','+_rtFa}
headers = {'Content-Type': 'application/x-www-form-urlencoded',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, seperti Gecko) Chrome/59.0.3071.115 Safari/537.36'}
headers.update(_FinalDict)
response=requests.get(url,headers=header)
cetak (tanggapan)`
mendapatkan kesalahan pada python3.4:
_Traceback (panggilan terakhir terakhir):
File "auth_sharepoint_online365.py", baris 2, di
dari office365.runtime.auth.authentication_context impor AuthenticationContext
File "authentication_context.py", baris 2, di
dari office365.runtime.auth.saml_token_provider impor SamlTokenProvider
File "saml_token_provider.py", baris 2, di
impor urlparse
ImportError: Tidak ada modul bernama ' urlparse '_
Menurut https://docs.python.org/2/library/urlparse.html :
Modul urlparse diubah namanya menjadi urllib.parse dengan Python 3.
Coba ini https://github.com/parthrawal/Python.O365 Saya telah menulis file .py yang dapat terhubung ke SharePoint Online dan bahkan memiliki beberapa metode untuk mendapatkan data dari daftar dalam format kamus. Beri tahu saya jika Anda memerlukan bantuan untuk itu.
@vic-by Komit baru-baru ini memperbaiki masalah: https://github.com/vgrem/Office365-REST-Python-Client/commit/90731f
Perhatikan bahwa saat ini, komit ini belum didorong di pypi. Jadi jika Anda melakukan pip install Office365-REST-Python-Client
Anda tidak akan mendapatkan kode itu. Menginstal dari git akan : pip install git+https://github.com/vgrem/Office365-REST-Python-Client.git
Masih ada pekerjaan yang diperlukan untuk benar-benar mendapatkan perpustakaan dengan python 3.
Saya mengalami masalah penyandian ketika menjalankan perpustakaan di bawah python 3. Itu terjadi ketika melakukan list.properties tapi saya yakin masalahnya perpasif.
ctx = ClientContext(url, ctx_auth)
web = ctx.web
ctx.load(web)
ctx.execute_query()
lists = web.lists
ctx.load(lists)
ctx.execute_query()
lists[0].properties
in <module>()
---> 16 lists[0].properties
c:\python\python35\lib\encodings\cp850.py in encode(self, input, final)
17 class IncrementalEncoder(codecs.IncrementalEncoder):
18 def encode(self, input, final=False):
---> 19 return codecs.charmap_encode(input,self.errors,encoding_map)[0]
20
21 class IncrementalDecoder(codecs.IncrementalDecoder):
UnicodeEncodeError: 'charmap' codec can't encode character '\u2019' in position 11052: character maps to <undefined>
Saya mengalami masalah yang sama dengan Python 3: "ModuleNotFoundError: Tidak ada modul bernama 'urlparse'"
Menguji file SharePointOnline.py: Kegagalan Otentikasi -> Kata sandi yang dimasukkan dan disimpan tidak cocok.
Apakah Anda mencoba tautan ini https://github.com/parthrawal/Python.O365 pastikan Anda menggunakan akun layanan untuk hal yang sama
Ya. Salin / Tempel kode, di bagian bawah:
if __name__ == "__main__":
UserName = "[email protected]"
# UserName = "[email protected]"
Password = "my_password"
TopLevelUrl = "https://company.sharepoint.com/"
SPOnlineHeaders(UserName, Password, TopLevelUrl)
Kesalahan berikut dikembalikan:
....
IndexError: list index out of range
Untuk mendapatkan detail lebih lanjut tentang kesalahan, saya telah memasukkan, pada SPOnlineHeaders, kode berikut (cetak):
response = requests.post(url, data=SharepointOnlineAuth, headers=headers)
s = str(response.content)
print(s)
Tanggapan:
... wst:FailedAuthentication...Kata sandi yang dimasukkan dan disimpan tidak cocok...
Saya harap yang Anda gunakan adalah akun layanan
Itu betul. Saya menggunakan akun layanan.
Apakah kata sandi benar? bisa tolong dicek ulang. karena saya mencoba menjalankan kode, itu berfungsi dengan baik. Tetapi ketika saya memasukkan kata sandi yang salah, itu memunculkan kesalahan "IndexError: daftar indeks di luar jangkauan".
Ya. Kata sandinya benar. Inilah yang terjadi ketika melakukan login secara manual.
Saya menulis tautan ke browser: https://company.sharepoint.com/
Saat menekan enter saya diarahkan ke halaman login: https://login.microsoftonline.com/575...71a/oauth2/authorize?client_id=...&response_mode=form_post&response_type=code%20id_token&resource=...&scope=openid&nonce =....&redirect_uri=https :%2F%2Fcompany.sharepoint.com%2F_forms%2Fdefault.aspx&wsucxt=1&client-request-id=....
Setelah menekan tombol ok di halaman login saya melihat dua tautan cepat ...
Pertama: https://sts.company.com/adfs/ls/wia?client-request-id=...&wa=wsignin1.0&wtrealm=urn%3afederation%3aMicrosoftOnline&wctx=LoginOptions%3D3%26estsredirect%3d2%26estsrequest%. ...&cbcxt=&namapengguna=myemail%perusahaan.com&mkt=&lc=
... Dan ...
Kedua: https://login.microsoftonline.com/login.srf?client-request-id=...
Dan akhirnya berhenti di halaman yang diperlukan:
https://perusahaan.sharepoint.com/
Saya menjalankan kode ini menemukan bahwa itu melempar kesalahan 403 di suatu tempat dalam kode.
respon = request.post(url,data=SharepointOnlineAuth,headers=header)
s = str(respon.konten)
cetak
"b'403 DILARANG'"
Saya lupa menggunakan titik akhir
urlpar
Saya mengalami masalah yang sama dengan urlparse (Python 3.6.5 :: Anaconda, Inc.). Ini diselesaikan dengan memodifikasi saml_token_provider.py: from urllib.parse import urlparse [...] url = urlparse(self.url)
Kemudian saya kehilangan web, yang saya instal dengan: pip install lpthw.web
. Namun, sepertinya ada masalah, karena sekarang saya mendapatkan masalah berikut:
from web import Web
File "C:\ProgramData\Anaconda3\lib\site-packages\web\__init__.py", line 14, in <module>
import utils, db, net, wsgi, http, webapi, httpserver, debugerror
ModuleNotFoundError: No module named 'utils'
Instal modul utils di anaconda.
Instal modul utils di anaconda.
Terima kasih. Setelah menginstal utils, saya juga perlu menginstal db...mungkin berguna untuk memiliki cek requirements.txt di dalam paket?
Apa yang terjadi sekarang adalah bahwa pernyataan cetak tidak memadai untuk python3:
print "var", var
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("var", var)?
Silahkan melalui link berikut:
https://docs.python.org/3.0/whatsnew/3.0.html
@viogp Terima kasih telah memposting kemajuan Anda di sini, akan lebih baik jika kami dapat mengatasi beberapa masalah ini. Saat ini menggunakan perpustakaan ini di py 2.7 dan ingin alur kerja ini ke py 3.
Hai. Saya punya masalah menggunakan perpustakaan ini.
Terjadi kesalahan saat mengambil token: AADTS90023: Permintaan STS tidak valid.
Terjadi kesalahan saat mengambil cookie auth
return 'FedAuth=' + self.FedAuth + '; rtFa=' + self.rtFa
TypeError: hanya dapat menggabungkan str (bukan "NoneType") ke str
Ada yang bisa membantu saya?
Karena perpustakaan secara resmi kompatibel dengan runtime Python 2 dan Python 3, usulkan untuk menutup masalah ini.
Hai,
Saya mendapatkan kesalahan ini "ModuleNotFoundError: Tidak ada modul bernama 'office365.sharepoint.client_context'" ketika saya menggunakan lingkungan proyek di pycharm selama menjalankan. TAPI itu akan berfungsi dengan baik jika saya menggunakan lingkungan sistem Python. Perilaku yang sama baik saya menggunakan Python 3.6 atau 3.7.
Tolong bantu!
Terima kasih.
Komentar yang paling membantu
@vic-by Komit baru-baru ini memperbaiki masalah: https://github.com/vgrem/Office365-REST-Python-Client/commit/90731f
Perhatikan bahwa saat ini, komit ini belum didorong di pypi. Jadi jika Anda melakukan
pip install Office365-REST-Python-Client
Anda tidak akan mendapatkan kode itu. Menginstal dari git akan :pip install git+https://github.com/vgrem/Office365-REST-Python-Client.git