scrapy中文社区

 找回密码
 立即注册
查看: 205|回复: 0

NTML如何爬取

[复制链接]

1

主题

1

帖子

20

积分

新手上路

Rank: 1

积分
20
发表于 2019-11-8 13:26:21 | 显示全部楼层 |阅读模式
因为公司网络有代理服务器,通过scrapy爬取或跳转到一个警告的页面,通过和公司IT的沟通了解,我们公司有NTML,需要三次握手后才能访问。
我也百度了很多信息,自己也尝试了很多,但是依旧失败。附上我中间件的信息。
    def process_request(self, request, spider):
        # Called for each request that goes through the downloader
        # middleware.

        # Must either:
        # - return None: continue processing this request
        # - or return a Response object
        # - or return a Request object
        # - or raise IgnoreRequest: process_exception() methods of
        #   installed downloader middleware will be called

根据网上教程写的,但是发现不行。

        # url = request.url
        # # usr = getattr(spider, 'http_usr', '')
        # # pwd = getattr(spider, 'http_pass','')
        # s = requests.session()
        # response = s.get(url, auth=HttpNtlmAuth(usr,pwd))
        # return HtmlResponse(url,response.status_code, response.headers.iteritems(), response.content)
        
        spider.browser.get(request.url)
        for i in range(5):
            spider.browser.execute_script("window.scrollTo(0, document.body.scrollHeight);")
        return HtmlResponse(url = spider.browser.current_url, body = spider.browser.page_source,encoding="utf-8", request=request)
回复

使用道具 举报

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

本版积分规则

网站出错
在线咨询
邮箱
bbs@scrapyd.cn
微信扫一扫
关注公众号

Archiver|手机版|scrapy中文社区

GMT+8, 2020-2-17 12:49

Powered by Discuz  2.5

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