python爬取内容重复输出_使用scrapy爬取新浪电影库,只能爬取到前两页内容,后边全是重复页面...

import scrapy

from sina.items import MovieItem

from scrapy_splash import SplashRequest

import time

import re

class SinaspiderSpider(scrapy.Spider):

name = 'sinaspider'

allowed_domains = ['ent.sina.com.cn']

start_urls = ['http://ent.sina.com.cn/ku/movie_search_index.d.html?page=1&cTime=1546971817&pre=next']

def start_requests(self):

for url in self.start_urls:

yield SplashRequest(url,args={'images': 0, 'timeout': 3})

def parse(self, response):

'''

1。获取文章列表页中的文章url并交给scrapy下载后并进行解析

2。获取下一页的url并交给scrapy,下载完成后交给parse

'''

for sel in response.css('ul.tv-list li'):

director = sel.css('.item-intro.left p:nth-child(3)::text').extract_first()

yield {'director': director}

href = response.css('.next-t.nextPage::attr(href)').extract_first()

if href:

t = str(int(time.time()*1000))

temp = re.match('.*page=(\d+).*', href)

p = int(temp.group(1))+1

url = 'http://ent.sina.com.cn/ku/movie_search_index.d.html?page='+str(p)+'&cTime='+t+'&pre=next'

yield SplashRequest(url, args={'images': 0, 'timeout': 3})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值