Panda-Learning icon indicating copy to clipboard operation
Panda-Learning copied to clipboard

树莓派下运行源代码出现问题

Open zyftank opened this issue 5 years ago • 45 comments

本想着提交下树莓派下编译文件,可是运行新版本的源代码时出错,以下是错误信息,求问题原因。 Traceback (most recent call last): File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner self.run() File "/home/pi/learn/Source Packages/pdlearn/threads.py", line 23, in run self.func(self.args) File "pandalearning.py", line 130, in video driver_video.go_js('window.scrollTo(0, document.body.scrollHeight/180{})'.format(j)) File "/home/pi/learn/Source Packages/pdlearn/mydriver.py", line 96, in go_js self.driver.execute_script(js) File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/webdriver.py", line 636, in execute_script 'args': converted_args})['value'] File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute self.error_handler.check_response(response) File "/usr/local/lib/python3.5/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: unknown error: session deleted because of page crash from tab crashed (Session info: headless chrome=72.0.3626.121) (Driver info: chromedriver=72.0.3626.121,platform=Linux 4.14.79-v7+ armv7l)

出问题的代码是在学习视频的线程中,文章是可以正常学习的。

zyftank avatar Apr 01 '19 02:04 zyftank

希望树莓派编译的,等待楼上

noway2014 avatar Apr 01 '19 03:04 noway2014

终于弄好了

zyftank avatar Apr 01 '19 03:04 zyftank

终于弄好了

@zyftank 👍

WenhaoDaiCN avatar Apr 01 '19 04:04 WenhaoDaiCN

@Alivon 问题是解决了,但是我还是有疑问的,学习文章和视频的代码都差不多,为什么就视频的程序在go_js这个函数上过不去呢,只有将视频的模式改成nohead=False程序才能运行?

zyftank avatar Apr 01 '19 04:04 zyftank

是不是树莓派资源到账,我没有设备也不能测试🙃

WenhaoDaiCN avatar Apr 02 '19 00:04 WenhaoDaiCN

@Alivon 已经pull了,这是个问题,感觉vps能行的,树莓派也能运行,只是树莓派的匹配的chrome和chromedriver资源不好找而已,自己动手能力强点的应该会自己调试源码的,不行的话,我pull个树莓派的源码,配合一下使用说明就能使用。

zyftank avatar Apr 02 '19 00:04 zyftank

@Alivon 已经pull了,这是个问题,感觉vps能行的,树莓派也能运行,只是树莓派的匹配的chrome和chromedriver资源不好找而已,自己动手能力强点的应该会自己调试源码的,不行的话,我pull个树莓派的源码,配合一下使用说明就能使用。

@zyftank 有无加入--disable-gpu chrome_options.add_argument('--disable-gpu') 用用单线程跑呢

WenhaoDaiCN avatar Apr 02 '19 02:04 WenhaoDaiCN

@Alivon 已经pull了,这是个问题,感觉vps能行的,树莓派也能运行,只是树莓派的匹配的chrome和chromedriver资源不好找而已,自己动手能力强点的应该会自己调试源码的,不行的话,我pull个树莓派的源码,配合一下使用说明就能使用。

@zyftank 有无加入--disable-gpu chrome_options.add_argument('--disable-gpu') 用用单线程跑呢

后面慢慢更新文档加入下载和贡献

WenhaoDaiCN avatar Apr 02 '19 02:04 WenhaoDaiCN

大佬们 那个安装下载安装铬和chromedriver及XVFB 1.下载网址:HTTPS://mirrors.tuna.tsinghua.edu.cn/raspberrypi/pool/main/c/chromium-browser/ 下载铬浏览器的l10n_72.0.3626.121-0 + rpt3_all.deb和铬chromedriver_72.0.3626.121-0 + rpt3_armhf.deb 这一步看不太懂 ,大佬可以提示一下怎么学习么

icman02200459 avatar Apr 07 '19 12:04 icman02200459

软件包体系架构(amd64)与本机系统体系结构(armhf)不符 在处理时有错误发生: 这怎么解决

icman02200459 avatar Apr 08 '19 01:04 icman02200459

@icman02200459 你在哪下的软件包,下载网址,你复制一下,粘贴一下进浏览器地址栏里回车,就可以进入清华镜像源的下载页面,找到你需要的软件下载就行了。

zyftank avatar Apr 08 '19 04:04 zyftank

楼主问题我也遇到了,请问如何解决的视频学习问题

isping avatar Apr 12 '19 11:04 isping

源码可以执行,打包后不能执行,不知道什么问题

错误提示

Traceback (most recent call last): File "pandalearning.py", line 4, in File "/usr/local/lib/python3.5/dist-packages/PyInstaller-3.5.dev0+b54a15d72e-py3.5.egg/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module exec(bytecode, module.dict) File "pdlearn/version.py", line 1, in File "/usr/local/lib/python3.5/dist-packages/PyInstaller-3.5.dev0+b54a15d72e-py3.5.egg/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module exec(bytecode, module.dict) File "requests/init.py", line 63, in File "/usr/local/lib/python3.5/dist-packages/PyInstaller-3.5.dev0+b54a15d72e-py3.5.egg/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module exec(bytecode, module.dict) File "requests/utils.py", line 24, in File "/usr/local/lib/python3.5/dist-packages/PyInstaller-3.5.dev0+b54a15d72e-py3.5.egg/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module exec(bytecode, module.dict) File "requests/_internal_utils.py", line 11, in File "/usr/local/lib/python3.5/dist-packages/PyInstaller-3.5.dev0+b54a15d72e-py3.5.egg/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module exec(bytecode, module.dict) File "requests/compat.py", line 11, in ImportError: cannot import name 'chardet' [10929] Failed to execute script pandalearning

mr-zl avatar Apr 17 '19 04:04 mr-zl

楼上的,打包的时候有些引用的包没打进去。

zyftank avatar Apr 17 '19 05:04 zyftank

楼上的,打包的时候有些引用的包没打进去。

向大佬请教,有空的话指导一下

mr-zl avatar Apr 17 '19 05:04 mr-zl

我记得当时是编辑spec文件的方法解决的,先正常用pyinstaller打包一遍,而后编辑后缀为spec文件,在hiddenimports的后面,加上缺少的包名字,本例是chardet,在执行一下pyinstaller -D XXX.SPEC试试。

还有种方法是指定第三方库目录路径,pyinstaller -F -p /dir;/dir2 xxx.py 注意dir和dir2是路径。

zyftank avatar Apr 17 '19 06:04 zyftank

我记得当时是编辑spec文件的方法解决的,先正常用pyinstaller打包一遍,而后编辑后缀为spec文件,在hiddenimports的后面,加上缺少的包名字,本例是chardet,在执行一下pyinstaller -D XXX的.spec试试。

还有种方法是指定第三方库目录路径,pyinstaller -F -p / dir; / dir2 xxx.py注意dir和dir2是路径。

按大佬说的方法,在hiddenimports后加上chardet后,重新pyinstall sepc后可以成功运行,输入账号密码后较长时间显示正在登陆,然后是下面的错误提示: Traceback (most recent call last): File "pandalearning.py", line 180, in File "pandalearning.py", line 21, in user_flag File "pdlearn/dingding.py", line 27, in dd_login_status File "pdlearn/mydriver.py", line 111, in get_cookies File "selenium/webdriver/remote/webdriver.py", line 841, in get_cookies File "selenium/webdriver/remote/webdriver.py", line 321, in execute File "selenium/webdriver/remote/errorhandler.py", line 242, in check_response selenium.common.exceptions.TimeoutException: Message: timeout (Session info: headless chrome=72.0.3626.121) (Driver info: chromedriver=72.0.3626.121,platform=Linux 4.14.98-v7+ armv7l)

[12127] Failed to execute script pandalearning

mr-zl avatar Apr 17 '19 07:04 mr-zl

你编我的源码吧,Alivon的源码在树莓派下出点小问题的,我已经改过了。

zyftank avatar Apr 17 '19 13:04 zyftank

你编我的源码吧,Alivon的源码在树莓派下出点小问题的,我已经改过了。

刚刚试了一下你的,源码不能运行

mr-zl avatar Apr 18 '19 10:04 mr-zl

贴一下运行错误的提示。

zyftank avatar Apr 18 '19 10:04 zyftank

贴一下运行错误的提示。

Traceback (most recent call last): File "/home/pi/Downloads/pi/Learning-master/learn.py", line 12, in from pyvirtualdisplay import Display File "/usr/lib/python3/dist-packages/thonny/backend.py", line 305, in _custom_import module = self._original_import(*args, **kw) ImportError: No module named 'pyvirtualdisplay'

mr-zl avatar Apr 18 '19 11:04 mr-zl

pip3 install pyvirtualdisplay 以后碰到no module named XXX错误,安装缺少的包就对了。

zyftank avatar Apr 18 '19 12:04 zyftank

pip3安装pyvirtualdisplay 以后碰到没有名为XXX错误的模块,安装缺少的包就对了。

好的,感谢大佬教导

mr-zl avatar Apr 18 '19 13:04 mr-zl

安装了pyvirtualdisplay ,还是一样的错误提示

mr-zl avatar Apr 18 '19 13:04 mr-zl

你用的python还是python3?如果用pip3安装,就用python3运行源代码,如果用pip安装,就用python运行,或者用pip,pip3都安装一下,确定包是否安装好。

zyftank avatar Apr 18 '19 23:04 zyftank

你用的蟒蛇还是python3?如果用PIP3安装,就用python3运行源代​​码,如果用PIP安装,就用python的运行,或者用PIP,PIP 3都安装一下,确定包是否安装好。

pip3安装都没成功,pip成功了,但是用python运行还是提示缺少模块

mr-zl avatar Apr 19 '19 00:04 mr-zl

用pip3装,装的时候可能有点蛋疼,用python2运行又要改代码,你先升级一下pip3,百度树莓派+pip3升级,可能会出错,找找应该有解决办法。

zyftank avatar Apr 19 '19 00:04 zyftank

确实很蛋疼,还在找方法,还好大佬耐心指导,不然真想放弃了

mr-zl avatar Apr 19 '19 03:04 mr-zl

用PIP3装,装的时候可能有点蛋疼,用python2运行又要改代码,你先升级一下PIP3,百度树莓派+ PIP3升级,可能会出错,找找应该有解决办法。

还是搞不定,升级pip3之后报ImportError: cannot import name 'main'。按网上教程修改usr/bin/pip3文件后执行 sudo pip3 install pyvirtualdispla 报错:Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple Collecting pyvirtualdispla Could not find a version that satisfies the requirement pyvirtualdispla (from versions: ) No matching distribution found for pyvirtualdispla

mr-zl avatar Apr 19 '19 04:04 mr-zl

你包名字搞错了

zyftank avatar Apr 19 '19 05:04 zyftank