阻止时如何在Scrapy中暂停蜘蛛

时间:2018-11-26 14:17:54

标签: python scrapy web-crawler scrapy-spider

我正在做一个运行在Intranet服务器上的Scrapy项目,我必须设置一个代理才能连接到外部,这样我就不能使用代理方式(更改IP)来防止被禁止。

middlewares.py:

<Modal
    style={styles.modalContent}
    isVisible={this.state.isVisible}
    onBackdropPress={this.closeModal}
>
    <Component {...componentProps} />
</Modal>

const styles = StyleSheet.create({
    modalContent: {
        justifyContent: 'center',
        alignItems: 'center',
        margin: 0
    },
});

即使目标网站阻止了我,我的目标网站也会返回200状态响应,因此我只能识别响应的内容来检查我是否被阻止

mySpider.py:

class SetProxy(object):
    def process_request(self, request, spider):
        request.meta['proxy'] = os.getenv('HTTP_PROXY')

当在方法parse_sub()中被禁止并在n分钟后恢复时,如何使Scrapy停止发送请求一会儿而不停止管道?

1 个答案:

答案 0 :(得分:0)

针对您的问题,您有两种选择:

  1. 在设置中更改download delay和/或concurrent requests
  2. 使用草率的AutoThrottle extension