أدوات لالتقاط وتحويل الويب
مجتمع GrabzIt على الإنترنت

خطأ في رمي عندما أركض التجريبي بيثون

خطأ:

تتبع (آخر مكالمة أخيرة):

ملف "GrabzItClient.py" ، السطر 6 ، في <module>

grabzIt.SaveTo( "وثائق / result.docx")

ملف "C: \ ملفات البرنامج \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 235 ، في SaveTo

معرف = النفس.Save()

ملف "C: \ ملفات البرنامج \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 209 ، في Save

obj = self._take (sig ، callBackURL)

ملف "C: \ Program Files \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 223 ، في _take

إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))

ملف "C: \ Program Files \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 629 ، في HTTPPost

h.endheaders ()

ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1234 ، في الرؤوس النهائية

self._send_output (message_body ، encode_chunked = encode_chunked)

ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1026 ، في _send_output

self.send (جي اس)

ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 964 ، قيد الإرسال

self.connect ()

ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 936 ، في الاتصال

(self.host ، self.port) ، self.timeout ، self.source_address)

ملف "C: \ Program Files \ Python36 \ lib \ socket.py" ، السطر 704 ، في create_connection

للقيمة في getaddrinfo (مضيف ، منفذ ، 0 ، SOCK_STREAM):

ملف "C: \ Program Files \ Python36 \ lib \ socket.py" ، السطر 743 ، في getaddrinfo

من أجل res in _socket.getaddrinfo (المضيف ، المنفذ ، العائلة ، النوع ، proto ، الإشارات):

socket.gaierror: [Errno 11001] getaddrinfo فشل

المصدر : (لقد قمت بتثبيت GrabzIt وحصلت على مفتاح التطبيق وأمانة التطبيق)

من GrabzIt استيراد GrabzItClient

grabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق ، أسرّة التطبيق)

grabzIt.HTMLToDOCX("<html> <body> <h1> Hello World! </h1> </body> </html>")

grabzIt.SaveTo( "وثائق / result.docx")

هل يمكن أن تخبرني ماذا أفعل؟

تم السؤال من مجهول يوم الثلاثاء ، 21 August ، 2018 06: 54: 17 AM

مرحبًا بك في المجتمع!

عادة أ socket.gaierror: [Errno 11001] getaddrinfo فشل يحدث عندما يتم استدعاء الرمز من وراء جدار الحماية أو الوكيل. يرجى التأكد من أن التطبيق لديه حق الوصول إلى منفذ 80.

تم الرد عليه بواسطة GrabzIt Support يوم الثلاثاء ، 21 August ، 2018 07: 01: 51 AM

شكرا لإجابتك.

نعم ، إنها مشكلة proxy.It يعمل بشكل جيد عندما أقوم بتغيير جهاز الكمبيوتر الآخر الذي لا يعمل الوكيل.

كيف يمكن أن تعمل مع الوكيل؟

تم الرد عليه من قِبل مجهول يوم الثلاثاء ، 21 August ، 2018 09: 30: 49 AM

ستكون هذه ميزة جديدة. نحن نبحث ما إذا كان يمكننا تغيير عميل Python لتمكين استخدام خوادم بروكسي.

إذا كان ذلك ممكنًا ، فسنعود إليك مع الإصلاح. يمكنك أن تذهب لنفسك إذا أردت كما هو الحال مع جميع عملائنا مفتوحة المصدر: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تم الرد عليه بواسطة GrabzIt Support يوم الثلاثاء ، 21 August ، 2018 12: 20: 04 PM

لقد أضفنا الميزة الجديدة. فقط قم بتنزيل ملف GrabzItClient.py واستبدل نسختك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

يمكنك بعد ذلك تعيين عنوان url الوكيل للخادم الوكيل الخاص بك مع إفساد طريقة SetLocalProxy الجديدة ، على سبيل المثال:

grabzIt.SetLocalProxy ( "HTTP: // 123.123.123.123: 21231")

واسمحوا لنا الآن كيف ستسير الامور وسنفعل إصدار جديد قريبا!

تم الرد عليه بواسطة GrabzIt Support يوم الثلاثاء ، 21 August ، 2018 05: 38: 30 PM

شكرا لإجابتك.

أنا محل GrabzItClient.py وغيرت مصدري:

grabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق ، أسرّة التطبيق)

grabzIt.SetLocalProxy ( "HTTP: //xxx@jp.xxxxx.com: yyyyyyy@zzz.proxy.zzz.zzzzzzz.com: 8080")

grabzIt.HTMLToDOCX("<html> <body> <h1> Hello World! </h1> </body> </html>")

grabzIt.SaveTo( "وثائق / result.docx")

مستخدم:xxx@jp.xxxxx.com

كلمة السر:yyyyyyy

مخدم بروكسي:zzz.proxy.zzz.zzzzzzz.com

ميناء:8080

رسالة خطأ:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
grabzIt.SaveTo( "result.docx")
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 487 ، بـ SaveTo
معرف = النفس.Save()
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 435 ، بـ Save
obj = self._take (sig ، callBackURL)
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 463 ، في _take
إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 1307 ، في HTTPPost
رؤوس ['Proxy-Authorization'] = 'Basic' + base64.b64encode (auth)
ملف "C: \ Program Files \ Python36 \ lib \ base64.py" ، السطر 58 ، في b64encode
مشفر = binascii.b2a_base64 (s ، السطر الجديد = خطأ)
TypeError: كائن يشبه بايت مطلوب ، وليس 'str'

نفس رسالة الخطأ حتى لقد غيرت SetLocalProxy من عند "http://xxx@jp.xxxxx.com:yyyyyyy@zzz.proxy.zzz.zzzzzzz.com:8080" إلى "http://xxx%40jp.xxxxx.com:yyyyyyy@zzz.proxy.zzz.zzzzzzz.com:8080"

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 12: 34: 43 AM

آسف ، قد أكون تعيين وكيل خاطئ.

لقد غيرت الخادم الوكيل إلى "http: // the_other_proxy_server: port" وأصبحت رسالة الخطأ:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
grabzIt.SaveTo( "result.docx")
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 487 ، بـ SaveTo
معرف = النفس.Save()
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 435 ، بـ Save
obj = self._take (sig ، callBackURL)
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 463 ، في _take
إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 1327 ، في HTTPPost
h.endheaders ()
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1234 ، في الرؤوس النهائية
self._send_output (message_body ، encode_chunked = encode_chunked)
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1026 ، في _send_output
self.send (جي اس)
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 964 ، قيد الإرسال
self.connect ()
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 940 ، في الاتصال
self._tunnel ()
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 919 ، في _tunnel
message.strip ()))
OSError: فشل اتصال النفق: مطلوب مصادقة وكيل 407

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 12: 40: 52 AM

تحتاج إلى تحديد اسم المستخدم وكلمة المرور الخاصين بك هكذا: http://username:password@example.com:12335

تم الرد عليه بواسطة GrabzIt Support يوم الأربعاء ، 22 August ، 2018 05: 38: 10 AM

نعم ، لقد حددت اسم المستخدم وكلمة المرور الخاصة بي (السؤال يوم الأربعاء ، 22 أغسطس ، 2018 09: 34: 43 AM) مثل:

http://username:password@example.com:12335

اسم المستخدم هو عنوان البريد الإلكتروني (xxx@jp.xxxxx.com) لذا فقد غيرت إلى xxx٪ 40jp.xxxxx.com

ولكنها رسالة الخطأ نفسها: TypeError: كائن يشبه بايت مطلوب ، وليس 'str'

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 05: 50: 49 AM

آسف ، فاتني ردكم السابق. أعتقد أن هذه مشكلة في Python 3 وأصدرت إصلاحًا يجب أن يحل الخطأ. يرجى تحديث GrabzItClient.py مرة أخرى من: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تم الرد عليه بواسطة GrabzIt Support يوم الأربعاء ، 22 August ، 2018 06: 40: 47 AM

لقد استبدلت ملف python والعثور على رسالة خطأ جديدة:

تتبع (آخر مكالمة أخيرة):

ملف "GrabzIt_test.py" ، السطر 54 ، في <module>

grabzIt.SaveTo( "result.docx")

ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 244 ، بـ SaveTo

معرف = النفس.Save()

ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 218 ، بـ Save

obj = self._take (sig ، callBackURL)

ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 232 ، في _take

إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))

ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 661 ، في HTTPPost

الرؤوس ['Proxy-Authorization'] = 'Basic' + encodedAuth

TypeError: يجب أن يكون str ، وليس بايت

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 08: 39: 24 AM

حسنا ، لقد فكناها intأسكي. نحن لا نستخدم Python 3 ، وهذا هو السبب الذي جعلنا نفهم ذلك. يرجى تحديث الكود الخاص بك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

نظرًا لأن هذا مفتوح المصدر ، فلا تتردد في تصحيح أي التزام تريد تطبيقه على Github. لأنه ليس لدينا إمكانية الوصول إلى الإعداد الخاص بك.

تم الرد عليه بواسطة GrabzIt Support يوم الأربعاء ، 22 August ، 2018 09: 22: 01 AM

شكرا جزيلا لمساعدتكم.

OSError: فشل اتصال النفق: مطلوب مصادقة وكيل 407

سأحاول تصحيح.

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 10: 23: 31 AM

نعتقد أننا نعرف ماهية المشكلة ، إلا أنها تتطلب إعادة كتابة بعض الكود. لذلك سوف نتصل بك عند الانتهاء. الأمل في ساعات 24.

تم الرد عليه بواسطة GrabzIt Support يوم الأربعاء ، 22 August ، 2018 12: 15: 22 PM

أعتقد أننا قمنا بإصلاح المشكلة! يمكنك الحصول على أحدث نسخة هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تم الرد عليه بواسطة GrabzIt Support يوم الأربعاء ، 22 August ، 2018 05: 30: 43 PM

شكرا للرد عليها.

رسالة خطأ جديدة:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
grabzIt.SaveTo( "result.docx")
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 243 ، بـ SaveTo
معرف = النفس.Save()
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 217 ، بـ Save
obj = self._take (sig ، callBackURL)
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 231 ، في _take
إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 629 ، في HTTPPost
h = self._getConnection ()
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 679 ، في _getConnection
h.putheader ('تفويض الوكيل' ، 'Basic' + encodedAuth)
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1201 ، في putheader
رفع CannotSendHeader ()
http.client.CannotSendHeader

تم الرد عليه من قِبل مجهول يوم الأربعاء ، 22 August ، 2018 11: 52: 17 PM

لقد أجرينا بعض التحسينات الطفيفة على: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

وقد اختبرت ذلك في Python 2.7 و 3.4 و 3.6 ويعمل في جميع البيئات ، مع وبدون الوكلاء ومع الوكلاء المعتمدين.

إذا كان لا يزال لا يعمل من أجلك ، فستحتاج إلى تصحيح الكود.

تم الرد عليه بواسطة GrabzIt Support يوم الخميس ، 23 August ، 2018 11: 41: 44 AM

شكرا لك على الرد.

سوف تصحيح مصدر بلدي.

بالمناسبة ، هل اختبرت اسم المستخدم وهو البريد الإلكتروني مثل xxx@yyy.com؟

تمت الإجابة من قبل مجهول يوم الخميس ، 23 August ، 2018 11: 56: 46 AM

لا ، لم أكن بحاجة إلى تشفير وفك تشفير بشكل صحيح ، لذا ربما تكون هذه هي المشكلة.

تم الرد عليه بواسطة GrabzIt Support يوم الخميس ، 23 August ، 2018 11: 59: 36 AM