scrapy新手请教,parse函数没有被执行

gaozg7 2018-01-30 05:09:20
import scrapy

class getdata(scrapy.Spider):
name = "baidu"
start_urls=["www.baidu.com"]

def parse(self, response):
print(1)


打印不出1来啊。

请高手指点。程序执行也不报错。是不是缺少什么插件或者配置有问题呢。百度一圈也没解决这个问题。
...全文
3076 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_44857342 2021-05-17
  • 打赏
  • 举报
回复 1
请问下def parse(self,response),为啥括号内显示报错
箱子ii 2020-03-13
  • 打赏
  • 举报
回复
ROBOTSTXT_OBEY = False setting设置了,from scrapy import cmdline cmdline.execute("scrapy crawl XXX".split())也有这样一个启动文件了,但是还是没有解决,没有进入def parse(self, response):输出东西,数据爬不下来,求助
卢政孝simi 2019-05-04
  • 打赏
  • 举报
回复 1
ROBOTSTXT_OBEY = False
小绿蛙 2019-01-18
  • 打赏
  • 举报
回复
请问我根据楼主的方法使用后提示No module named 'GetImage.settings',这是为什么啊
laijiajia 2018-10-26
  • 打赏
  • 举报
回复
引用 1 楼 sinat_37982934 的回复:
ROBOTSTXT_OBEY = False setting中设置试试
这个方法可以
moveonzz 2018-10-24
  • 打赏
  • 举报
回复
引用 9 楼 qq_33357094 的回复:
[quote=引用 4 楼 gaozg7 的回复:] 问题解决了,谢谢各位。调试的时候加上 from scrapy import cmdline cmdline.execute("scrapy crawl XXX".split()) 就好使了。命令行执行scrapy crawl XXX这个也可以,不过我新手不太懂。
您好 我在命令执行的时候也是没有执行print 语句 请问怎么调试啊 新手小白[/quote] scrapy 的启动方式为在爬虫项目目录下cmd执行 scrapy crawl xxx XXX-为你的爬虫名 直接run是不行的 上面的方法是定义了一个方法来执行CMD中启动语句 比较方便
TongYixuan_LUT 2018-10-18
  • 打赏
  • 举报
回复
引用 4 楼 gaozg7 的回复:
问题解决了,谢谢各位。调试的时候加上
from scrapy import cmdline
cmdline.execute("scrapy crawl XXX".split())

就好使了。命令行执行scrapy crawl XXX这个也可以,不过我新手不太懂。


您好 我在命令执行的时候也是没有执行print 语句 请问怎么调试啊
新手小白
mathdogggg 2018-10-09
  • 打赏
  • 举报
回复
引用 7 楼 qq_36377875 的回复:
from scrapy import cmdline cmdline.execute("scrapy crawl XXX".split()) 请问这个要写在哪里?? XXX代表什么?? 小白问题比较多
你写的爬虫文件的文件名,不用加后缀
快D碗_里来 2018-09-24
  • 打赏
  • 举报
回复
from scrapy import cmdline cmdline.execute("scrapy crawl XXX".split()) 请问这个要写在哪里?? XXX代表什么?? 小白问题比较多
gaozg7 2018-01-31
  • 打赏
  • 举报
回复
引用 1 楼 sinat_37982934 的回复:
ROBOTSTXT_OBEY = False setting中设置试试
谢谢大兄弟,我改了。还是不好用。。。。
gaozg7 2018-01-31
  • 打赏
  • 举报
回复
问题解决了,谢谢各位。调试的时候加上 from scrapy import cmdline cmdline.execute("scrapy crawl XXX".split()) 就好使了。命令行执行scrapy crawl XXX这个也可以,不过我新手不太懂。
虾米馅煎包 2018-01-31
  • 打赏
  • 举报
回复
你没有加协议 是访问不了的 = = start_urls=["http://www.baidu.com"]
氵彡哥 2018-01-30
  • 打赏
  • 举报
回复
ROBOTSTXT_OBEY = False setting中设置试试
首先一定要知道 Scrapy爬虫框架 对新手非常的不友好,或者从某些视频网站上跟着视频学或者说从培训机构里学几天技能掌握的,主要原因有以下两个方面。框架模块内容太多,虽然只是实现了一个简单的爬虫工作,但是实际上完成一个页面的抓取在框架里最少要走8个以上的步骤,但是这些步骤都是基本都是依靠配置文件完成的,没有丰富的爬虫经验,这些模块很多都不知道是做什么的,也不知道怎么配置。基于框架内进行数据抓取仅限于那些通用的网站抓取,你就简单理解为一个完成重复工作的机器人就行了。但是如果是那种反爬比较厉害的网站那就是另外一种情况了,完全是爬虫工程师和网站开发者的一个博弈了,所以这种情况不适合任何一种爬虫框架。对于那些想在工作中摸鱼的Python工程师来说就一定要使用爬虫框架,你会发现省不少力气而且效率真心非常高,不过一切都是在对框架熟练掌握的基础上、和对业务的深刻理解来说来说。但凡说 Scrapy 无用的基本上没有认真阅读过 Scrapy 的源码,对于 Scrapy框架 中的众多功能在搭建爬虫系统的时候能想到用几个?而且是基本是没有做过大型的爬虫系统项目的。咱们倒着推这个事,你就知道为什么要用Scrapy框架了。我之前的单位是国家互联网的新闻中心,做的项目中的有一项是复现863课题舆情监控系统中的内容,使用的方法是 Scrapy爬虫框架 结合 Django Web 搭建的数据采集系统,抓取的目标对象包括新闻、博客、论坛等等,其中每天目标检测网站成千上万,如果不用框架去做这种数据采集得累死。1.抓取的数据存哪里?单纯Scrapy爬虫脚本写好了执行抓取任务时数据保存到哪里?ES、Mongodb、MySQL?如果做过开发的人都知道存 Mongodb 中,那些说把数据存到 MySQL 的人基本上99%是从培训机构里出来的,因为大多数培训机构爬虫是不讲 Mongodb 的。通过业务计算逻辑把数据传输到生产 ES 环境中。2.几千、几万个爬虫脚本应该怎么管理?很多刚入行的人都觉得爬虫脚本难写,其实并不是这样。最难的是如何管理密密麻麻数不清的爬虫脚本,这里介绍Python如何处理这个事情。管理方式无非集中,Web管理环境、GUI管理环境、手动管理环境,不管是哪一种都需要一定的开发基础和管理思路。比较省事的用别人写好的Scrapy管理框架,比如Gerapy爬虫管理框架。如同这样web直接一键管理爬虫脚本,更多内容看上面的文章,这里就不重复了。3.Scrapy如何面对反爬的?跟大多数单线抓取某个网站解决其反爬一样,只要把反爬的逻辑设置好,比如最简单的更换代理IP,更换header,解析JS生成cookie访问等等,都可以在框架中设置配置文件。4.如何提高代码编写效率以及数据爬取效率?一定要阅读源码,一定要阅读源码,一定要阅读源码你才能知道这个框架里到底有什么内容可以用。5.基于Python各种框架开发的爬虫定制化项目。

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧