鱼C论坛

 找回密码
 立即注册
查看: 1781|回复: 4

关于pyspider安装及启动的一些问题求助3.8版本python

[复制链接]
发表于 2020-3-17 15:43:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
目前python版本3.8。
在进行了多次安装卸载之后的pyspider并且在出现了一下内容:

File “D:\installed\Python\Lib\site-packages\pyspider\run.py”, line 231
async=True, get_object=False, no_input=False):
SyntaxError: invalid syntax

替换了:D:\installed\Python\Lib\site-packages\pyspider\run.py 和 D:\installed\Python\Lib\site-packages\pyspider\fetcher\tornado_fetcher.py
为async 的变量或参数名。未进行“全部替换”

替换保存后再次运行“pyspider all”
这时spider只启动到“scheduler xmlrpc listening on 127.0.0.1:23333”就停止了
继续替换PYTHON_HOME\Lib\site-packages\pyspider\webui\app.py中的async

之后再次运行pyspider all之后系统显示如下信息:
c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\libs\utils.py:196: FutureWarning: timeout is not supported on your platform.
  warnings.warn("timeout is not supported on your platform.", FutureWarning)
[W 200317 15:37:23 run:413] phantomjs not found, continue running without it.
[I 200317 15:37:25 result_worker:49] result_worker starting...
[I 200317 15:37:25 processor:211] processor starting...
[I 200317 15:37:25 scheduler:647] scheduler starting...
[I 200317 15:37:25 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0
[I 200317 15:37:26 tornado_fetcher:638] fetcher starting...
[I 200317 15:37:26 scheduler:782] scheduler.xmlrpc listening on 127.0.0.1:23333
[I 200317 15:37:26 app:84] webui exiting...
[I 200317 15:37:26 tornado_fetcher:671] fetcher exiting...
[I 200317 15:37:26 scheduler:663] scheduler exiting...
[I 200317 15:37:26 processor:229] processor exiting...
[I 200317 15:37:27 result_worker:66] result_worker exiting...
Traceback (most recent call last):
  File "C:\Users\lee\AppData\Local\Programs\Python\Python38\Scripts\pyspider-script.py", line 11, in <module>
    load_entry_point('pyspider==0.3.10', 'console_scripts', 'pyspider')()
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 754, in main
    cli()
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 497, in all
    ctx.invoke(webui, **webui_config)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 384, in webui
    app.run(host=host, port=port)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\webui\app.py", line 59, in run
    from .webdav import dav_app
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\webui\webdav.py", line 216, in <module>
    dav_app = WsgiDAVApp(config)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\wsgidav\wsgidav_app.py", line 134, in __init__
    _check_config(config)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\wsgidav\wsgidav_app.py", line 118, in _check_config
    raise ValueError("Invalid configuration:\n  - " + "\n  - ".join(errors))
ValueError: Invalid configuration:
  - Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.

又查询到可能是因为wsgidav的版本问题导致,再次进行python -m pip install wsgidav==2.4.1将wsgidav替换为2.4.1。但是悲剧的事情再次出现。接着出现如下报错信息。pyspider依然无法正常启动。。。。求大神指点pyspider的问题到底出在什么地方。。。。
c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\libs\utils.py:196: FutureWarning: timeout is not supported on your platform.
  warnings.warn("timeout is not supported on your platform.", FutureWarning)
[W 200317 15:40:54 run:413] phantomjs not found, continue running without it.
[I 200317 15:40:56 result_worker:49] result_worker starting...
[I 200317 15:40:56 processor:211] processor starting...
[I 200317 15:40:56 scheduler:647] scheduler starting...
[I 200317 15:40:56 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0
[I 200317 15:40:57 tornado_fetcher:638] fetcher starting...
[I 200317 15:40:57 scheduler:782] scheduler.xmlrpc listening on 127.0.0.1:23333
[I 200317 15:40:57 app:84] webui exiting...
[I 200317 15:40:57 tornado_fetcher:671] fetcher exiting...
[I 200317 15:40:57 scheduler:663] scheduler exiting...
[I 200317 15:40:57 processor:229] processor exiting...
[I 200317 15:40:58 result_worker:66] result_worker exiting...
Traceback (most recent call last):
  File "C:\Users\lee\AppData\Local\Programs\Python\Python38\Scripts\pyspider-script.py", line 11, in <module>
    load_entry_point('pyspider==0.3.10', 'console_scripts', 'pyspider')()
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 754, in main
    cli()
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 497, in all
    ctx.invoke(webui, **webui_config)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\run.py", line 384, in webui
    app.run(host=host, port=port)
  File "c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\pyspider\webui\app.py", line 64, in run
    from werkzeug.wsgi import DispatcherMiddleware
ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (c:\users\lee\appdata\local\programs\python\python38\lib\site-packages\werkzeug\wsgi.py)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-3-17 22:33:01 | 显示全部楼层
顶起,求高手。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-18 16:07:40 | 显示全部楼层
本帖最后由 admintest166 于 2020-3-18 16:09 编辑

3.7以上要解决的BUG很多 应该是pyspider作者还没有对3.6以上的py版本进行更新
你把你现在用的py版本卸载了 重新安装一个py3.6就行了 不需要解决这些东西
一般搞爬虫啥的 3.6肯定够用了 不要追求最新的py版本 会得不偿失
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-18 16:08:25 | 显示全部楼层
我当时在linux下 光解决BUG都是花了半个多小时 解决完一个 又来另一个 很正常的 但是学爬虫就是要懂得折腾
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-18 21:36:12 | 显示全部楼层
admintest166 发表于 2020-3-18 16:08
我当时在linux下 光解决BUG都是花了半个多小时 解决完一个 又来另一个 很正常的 但是学爬虫就是要懂得折腾

感谢大神指导,其实最近一直在研究你的你的爬虫爬小说,目前为止未使用pyspider的框架目前在想办法手爬,第一步解析网站目前为研究,目前研究的方向是解析网页内的html代码如何利用正则表达式或者字符串的方式把小说的目录和地址进行分离成单独的文本。。。因为是新手python的基础也也还不是特别的强,所以目前还在折腾中。。。。也遇到一些瓶颈问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-18 21:45:59 | 显示全部楼层
假面的假面 发表于 2020-3-18 21:36
感谢大神指导,其实最近一直在研究你的你的爬虫爬小说,目前为止未使用pyspider的框架目前在想办法手爬, ...


手爬也很简单啊 我是因为之前都是用手爬 所以后面就开始学习框架了 就像小甲鱼说的 不要一开始使用IDE工具一样 因为框架也是基本手爬的库  搞懂基本的爬虫原理 学框架会好学很多
学习爬虫的路线也是 基本库 解析库 然后反爬 再到框架的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-18 21:57:44 | 显示全部楼层
admintest166 发表于 2020-3-18 21:45
手爬也很简单啊 我是因为之前都是用手爬 所以后面就开始学习框架了 就像小甲鱼说的 不要一开始使用IDE ...

感谢感谢大神指导。。。。顺带请教一个问题。。。

                        <dd><a href="https://www.biquge5200.cc/60_60363/141354032.html">VIP上架公告</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354035.html">关于猫腻的庆余年(浮见君)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354037.html">6.29晚八点《庆余年》作者 “猫腻”与您相约起点作者名家访谈</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354039.html">无尽的鄙视(苍穹)</a></dd>
                        
                        
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354046.html">牛栏街事件新闻(记者:海棠依旧在及…)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354047.html">那夜嚣张的雨(作者:苍穹)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354048.html">封推感言</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354050.html">今天,你范建了吗?(作者:厉无咎)</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354056.html">范建教子(作者:万里流)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354058.html">卷末小结及去年回顾及回乡总结</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354062.html">四川!四川!捐款细项</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354064.html">默哀</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354066.html">雨打风吹亦难去之陈萍萍(作者:小孙北京)</a></dd>


类似于这种的字符串。中间有空行我该如何截取出来网址信息?我用了正则表达式解析到了中间url地址。但可是当遇到空行的时候循环中断,而后我有在想使用字符串截取方式,但是也是会遇到空行循环中断。。。

这是采用字符串截取代码,刚才使用i        if each_line !='\n\n': 判断代码。但是问题依旧
with open('c:\\Users\\lee\\Documents\\编程练习\\qyn.txt',encoding='UTF-8') as f:
    for each_line in f:
        url=each_line.split(""",49) 
        print(url[1])


这是采用正则表达式提取的,同样也是遇到换行状态就会中断。。。。
import re
with open('c:\\Users\\lee\\Documents\\编程练习\\qyn.txt',encoding='UTF-8') as f:
    url_file=open('qynurl.txt','w',encoding='UTF-8')
    for each in f:
        url=re.search("https://www.biquge5200.cc/60_60363/[0-9]*\.html",each )
        url_file.writelines(url.group()+'\n')
        print(url.group())
url_file.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-18 22:14:07 | 显示全部楼层
admintest166 发表于 2020-3-18 21:45
手爬也很简单啊 我是因为之前都是用手爬 所以后面就开始学习框架了 就像小甲鱼说的 不要一开始使用IDE ...
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354032.html">VIP上架公告</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354035.html">关于猫腻的庆余年(浮见君)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354037.html">6.29晚八点《庆余年》作者 “猫腻”与您相约起点作者名家访谈</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354039.html">无尽的鄙视(苍穹)</a></dd>
                        
                        
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354046.html">牛栏街事件新闻(记者:海棠依旧在及…)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354047.html">那夜嚣张的雨(作者:苍穹)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354048.html">封推感言</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354050.html">今天,你范建了吗?(作者:厉无咎)</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354056.html">范建教子(作者:万里流)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354058.html">卷末小结及去年回顾及回乡总结</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354062.html">四川!四川!捐款细项</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354064.html">默哀</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354066.html">雨打风吹亦难去之陈萍萍(作者:小孙北京)</a></dd>

真的感谢大神指点,最近在研究字符串提取问题。如上述部分字符串,我想提取出url地址信息及标题信息分别提取,目前无论是使用正则表达式还是采用字符串阶段的方式都是会遇到换行循环中断。请问大神应该如何编写代码,以下代码分别是使用正则表达式及字符串截取的方式进行提取。。。应该如何修改条件。。。。


正则表达式提取方式:
import re
with open('c:\\Users\\lee\\Documents\\编程练习\\qyn.txt',encoding='UTF-8') as f:
    url_file=open('qynurl.txt','w',encoding='UTF-8')
    for each in f:
        url=re.search("https://www.biquge5200.cc/60_60363/[0-9]*\.html",each )
        url_file.writelines(url.group()+'\n')
        print(url.group())
url_file.close()


字符串提取方式:
with open('c:\\Users\\lee\\Documents\\编程练习\\qyn.txt',encoding='UTF-8') as f:
    for each_line in f:
        if each_line !='\n\n':
            url=each_line.split(""",49) 
            print(url[1])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-19 01:42:50 | 显示全部楼层
假面的假面 发表于 2020-3-18 22:14
真的感谢大神指点,最近在研究字符串提取问题。如上述部分字符串,我想提取出url地址信息及标题信息 ...
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354032.html">VIP上架公告</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354035.html">关于猫腻的庆余年(浮见君)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354037.html">6.29晚八点《庆余年》作者 “猫腻”与您相约起点作者名家访谈</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354039.html">无尽的鄙视(苍穹)</a></dd>
                        
                        
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354046.html">牛栏街事件新闻(记者:海棠依旧在及…)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354047.html">那夜嚣张的雨(作者:苍穹)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354048.html">封推感言</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354050.html">今天,你范建了吗?(作者:厉无咎)</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354056.html">范建教子(作者:万里流)</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354058.html">卷末小结及去年回顾及回乡总结</a></dd>
                        
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354062.html">四川!四川!捐款细项</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354064.html">默哀</a></dd>
                        <dd><a href="https://www.biquge5200.cc/60_60363/141354066.html">雨打风吹亦难去之陈萍萍(作者:小孙北京)</a></dd>

你的意思是提取 这段代码中的url链接还是文字内容 我一般不用正则 我用pyquery

你跟我说下 你想要提取什么 我帮你写一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-19 01:53:10 | 显示全部楼层
admintest166 发表于 2020-3-19 01:42
你的意思是提取 这段代码中的url链接还是文字内容 我一般不用正则 我用pyquery

你跟我说下 你想要 ...
<dd><a href="https://www.biquge5200.cc/60_60363/141354058.html">卷末小结及去年回顾及回乡总结</a></dd>

我没有看懂你的代码 但是我说一下 我自己对你所说的一些理解

1.如果你想提取这个代码中的URL链接  直接正则表达式
比如这么写  href="(.*^)"  

2.如果你是想提取 https://www.biquge5200.cc/60_60363/141354058.html URL中的 141354058.html
首先先用正则把URL整个提取出来 然后再用一次正则把141354058.htm 提取出来
我太久没用正则说的比较模糊  一般爬虫用的都是解析库 但是有时候极端条件还是得用正则
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-20 00:07:18 | 显示全部楼层
admintest166 发表于 2020-3-19 01:53
我没有看懂你的代码  但是我说一下 我自己对你所说的一些理解

1.如果你想提取这个代码 ...

非常感谢您的指导,我其实确实是想提取url与标题的对应关系然后存成一个心的txt文档。但是因为空行的问题。在提取到空行处代码会停止继续提取
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-25 01:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表