鱼C论坛

 找回密码
 立即注册
查看: 2941|回复: 3

scrapy框架里用不了selenium,显示没有这个模块

[复制链接]
发表于 2020-11-19 16:26:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import scrapy
from selenium import webdriver
from wangyiPro import WangyiproItem

class WangyiSpider(scrapy.Spider):
    name = 'wangyi'
    #allowed_domains = ['www.xxx.com']
    start_urls = ['https://news.163.com/']

    model_urls = [] #存储五个板块对应详情页的url

    #实例化一个浏览器对象
    def __init__(self):
        self.bro = webdriver.Edge(executable_path='D:\\编程练习\\edge_driver\\msedgedriver')

    def parse(self, response):
        li_list = response.xpath('//div[@class="ns_area list"]/ul/li')
        alist = [3, 4, 7, 8, 9]
        for a in alist:
            model_url = li_list[a].xapath('./a/@href').extract_first()
            self.model_urls.append(model_url)

        #依次对每一个板块对应的页面进行请求
        for url in self.model_urls:#对每一个板块的url进行请求发送
            yield scrapy.Request(url=url, callback=self.parse_model)

    #每一个板块对应的新闻标题相关的内容都是动态加载出来的
    def parse_model(self, response):
        div_list = response.xpath('/html/body/div/div[3]/div[4]/div[1]/div/div/ul/li/div/div')
        for div in div_list:
            title = div.xpath('.//div[#class="news_title"]/h3/a/text()').extract_first()
            new_detail_url = div.xpath('.//div[#class="news_title"]/h3/a/@href').extract_first()

            item = WangyiproItem()
            item['title'] = title

            yield scrapy.Request(url=new_detail_url, callback=self.detail_parse, meta={'item': item})

    def detail_parse(self, response):
        content = response.xpath('//div[@class="post_text"]//text()').extract()
        content = ''.join(content)#转换成字符串
        item = response.meta['item']
        item['content'] = content
        yield item

    def closed(self,spider):
        self.bro.quit()
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-11-19 16:27:58 | 显示全部楼层
结合scrapy使用显示,ModuleNotFoundError: No module named 'selenium'
但是单独使用selenium是可以的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-19 17:21:08 | 显示全部楼层
帅咸鱼 发表于 2020-11-19 16:27
结合scrapy使用显示,ModuleNotFoundError: No module named 'selenium'
但是单独使用selenium是可以的

我的能用。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-19 20:49:06 | 显示全部楼层
一看五大板块就知道是波波老师的爬虫课。。。
但是问题我不知道
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-30 01:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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