欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

scrapy,重写spider,参数传递运行报错 。

程序员文章站 2022-04-27 23:37:44
...

spider蜘蛛类的参数传递,重写staart_url方法。
能复制的尽量别手写,大小写的区分可以调试一年。
划重点上干货
1 模块不存在
排查路径,反复报错‘模块’不存在的。文件夹添加init文件。然后将文件夹拖到python37目录中,因为这个路径是添加到了环境变量中的,可以通过import sys,sys.path查看,python中import 搜索模块会优先从sys.path中查找,至于添加sys.path.append()太坑了,只是临时添加路径。所以有兴趣的童鞋请自行爬坑
2.`import scrapy
from myweb.myfirstpjt.myfirstpjt.items import MyfirstpjtItem
class WeisuenSpider(scrapy.Spider):
name = ‘weisuen’

start_urls = [
    'http://slide.news.com.cn/k/slide_8_193_45192.html #p=1',
              ]

def __init__(self,myurl=None,*args,**kwargs):
    super(WeisuenSpider,self).__init__(*args,**kwargs)
    print("要爬取的网址为:%s"%myurl)
def parse(self, response):
    item=MyfirstpjtItem()
    item['urlname']=response.xpath("/html/head/title/text()")
    print("以下将显示爬取的网址的标题")
    print(item['urlname'])`

2 重写方法,在cmd中运行weisuen.py文件时自定义网站报错.
命令:scrapy crawl weisuen -a myurl=https://www.csdn.net –nolog
去除–nolog查看报错信息。
文件名“weisuenSpider不存在,摸不着头脑,恍惚中才发现是class 创建类的名称WeisuenSpider,首字母未大写,导致报错
进入项目文件夹目录,可以cd 也可以在在文件夹路径中输入cmd然后回车,可直接进入dos界面并将在当前文件夹路径中
scrapy,重写spider,参数传递运行报错 。

修改后重新运行scrapy crawl weisuen -a myurl=https://www.csdn.net –nolog
scrapy,重写spider,参数传递运行报错 。
访问csdn,然鹅返回的响应确实静态界面,熊猫乐活|设计师的。。。。,可谓是一坑未平,另一坑又起。scrapy项目爬虫未伪装请求头,传递的请求头就是:scrapy,这分明就是在告诉网管,我是scrapy快来搞我,于是就被搞了。
预知后事如何,且听下回分解。

相关标签: scrapy