爬虫第二部分

(1)scrapy爬取豆瓣具体个人主页的内容

第一步:新建项目

cd ..
scrapy startproject doubanPro
cd doubanPro/

第二步:新建爬虫文件

scrapy genspider douban www.douban.com

第三步:爬虫文件里边的内容

# -*- coding: utf-8 -*-
import scrapy

class DoubanSpider(scrapy.Spider):
    name = 'douban'
    # allowed_domains = ['www.douban.com']
    start_urls = ['https://accounts.douban.com/j/mobile/login/basic']
    #重写start_requests方法
    def start_requests(self):
        data={
            'ck':'',
            'name': '17862982790',
            'password': 'spc121314',
            'remember': 'false',
            'ticket':''
        }
        for url in self.start_urls:
            yield scrapy.FormRequest(url=url,formdata=data,callback=self.parse)
    #针对个人主页页面数据进行解析操作
    def parseBySecondPage(self,response):
        fp=open('second.html','w',encoding='utf-8')  #个人主页
        fp.write(response.text)
        #可以对当前用户的个人主页页面数据进行指定解析操作

    def parse(self, response):
        #登录成功后的页面数据进行存储
        fp=open('main.html','w',encoding='utf-8')  #写入
        fp.write(response.text)           #main应该是登录成功之后的页面,但是没有拿到

        #获取当前用户的个人主页
        url='https://www.douban.com/people/198409299/'
        yield scrapy.Request(url=url,callback=self.parseBySecondPage)

第四步:settings.py配置UA和robots配置

第五步:执行scrapy crawl douban  --nolog

结果:成功爬取到个人主页,但是存在的问题是,登录之后的页面有问题

 

(2)

扫描二维码关注公众号,回复: 6695747 查看本文章

猜你喜欢

转载自www.cnblogs.com/studybrother/p/11115191.html