Python 爬虫框架pyspider尝试

安装pyspider

pyspider可以做什么,在这里我不打算多说, 官方有详细文档介绍:
官方文档:http://docs.pyspider.org/en/latest/

下面直接上干货:

要准备的东西:

  1. 消息中间件 (all模式必选):
    rabbitmq、beanstalk、kombu、redis都可以
    rabbitmq: http://www.rabbitmq.com/download.html 需依赖erlang: http://www.erlang.org/downloads
  2. 数据库 (可选):
    mysql
    mysql-connector 包
  3. PhantomJS (可选)

启动配置:

pyspider.conf (名字任意起)
{
“taskdb”: “mysql+taskdb://username:password@host:port/pyspider_db”,
“projectdb”: “mysql+projectdb://username:password@host:port/pyspider_db”,
“resultdb”: “mysql+resultdb://username:password@host:port/pyspider_db”,
“message_queue”: “amqp://username:password@host:port/%2F”,
“webui”: {
“username”: “some_name”,
“password”: “some_passwd”,
“need-auth”: true
}
}

踩过的坑

  1. 点击Run之后,Python崩溃
    这个是因为Python是64位造成的, 换成32位后解决
  2. HTTP 599: SSL certificate problem: self signed certificate in certificate chain
    这个错误会发生在请求 https 开头的网址,SSL 验证错误,证书有误。
    解决方法:在 crawl 方法中加入忽略证书验证的参数,validate_cert=False, 也可以加到全局crawl_config中
  3. unknow project: xxx
    先将状态改成Debug或者Running, 再点击Run
  4. connect to scheduler rpc error: error(10061, ”)
    如果用all模式启动, pyspider各模块将处于不同的子进程中, 需要依赖消息中间件才能工作

  5. No module named mysql.connector
    需要mysql-connector驱动包

all模式启动:pyspider [-c xxx.conf] all

待续

你可能感兴趣的:(Python)