scrapy实践-02

双师demo

ptpress.com.cn/shopping/index

解析每一首歌

<ul class="f-hide"><li><a href="/song?id=2037945324">芯房</a></li><li><a href="/song?id=2037926385">知足</a></li><li><a href="/song?id=2036808675">经典</a></li><li><a href="/song?id=2036809063">烟</a></li><li><a href="/song?id=2037904328">你啊你啊·2023</a></li><li><a href="/song?id=34723470">东京不太热</a></li><li><a href="/song?id=2036331318">爱不单行</a></li><li><a href="/song?id=2037542587">我要你有我</a></li><li><a href="/song?id=2037916536">仙都梦茶</a></li><li><a href="/song?id=2036803442">MELODY LOVE</a></li><li><a href="/song?id=1961056433">肯定</a></li><li><a href="/song?id=2037202513">迷失的季节</a></li><li><a href="/song?id=2036841029">如期</a></li><li><a href="/song?id=2009060751">不属于地球上的</a></li><li><a href="/song?id=2037930284">葵语</a></li><li><a href="/song?id=2031946213">RUN</a></li><li><a href="/song?id=1978706347">遗憾吗</a></li><li><a href="/song?id=2033897126">迷宫</a></li><li><a href="/song?id=1996476772">Give You What You Want</a></li><li><a href="/song?id=2037917658">数呀数</a></li><li><a href="/song?id=2037904519">人间指南</a></li><li><a href="/song?id=1995089745">Surround Sound</a></li><li><a href="/song?id=2037904394">8Hz</a></li><li><a href="/song?id=1821073603">Falling for You</a></li><li><a href="/song?id=1981557398">孤雏</a></li><li><a href="/song?id=382358">Our Story</a></li><li><a href="/song?id=499673023">越过山丘 (Live)</a></li><li><a href="/song?id=2006721186">我们的歌</a></li><li><a href="/song?id=2024299143">丘比特信号</a></li><li><a href="/song?id=2035180495">姑娘在远方 (青春版)</a></li><li><a href="/song?id=1999314675">赦免</a></li><li><a href="/song?id=2037918332">追逐日落</a></li><li><a href="/song?id=526081111">到此为止</a></li><li><a href="/song?id=2028871055">循迹</a></li><li><a href="/song?id=1318721004">失眠酒</a></li><li><a href="/song?id=1963132367">PLAY</a></li><li><a href="/song?id=1915969053">Do My Ting</a></li><li><a href="/song?id=514765154">世界上的另一个我</a></li><li><a href="/song?id=552575157">Ice On My Baby</a></li><li><a href="/song?id=2037916407">爱煎熬</a></li><li><a href="/song?id=402070838">大地 (Live)</a></li><li><a href="/song?id=2025227743">Cupid (Twin Ver.)</a></li><li><a href="/song?id=2037926081">粉碎机</a></li><li><a href="/song?id=1833837324">你头顶的风</a></li><li><a href="/song?id=2037904735">夏夜没有你,但有海风吹</a></li><li><a href="/song?id=1437188905">你是我昨晚的梦</a></li><li><a href="/song?id=2008251973">吴德周</a></li><li><a href="/song?id=2037542572">日夜迁徙</a></li><li><a href="/song?id=255574">恶作剧</a></li><li><a href="/song?id=1309995372">Coffee</a></li><li><a href="/song?id=2033568298">你会看向我嘛</a></li><li><a href="/song?id=1956990495">Start Again</a></li><li><a href="/song?id=1303027499">总有一天你会出现在我身边</a></li><li><a href="/song?id=2017217006">So Low</a></li><li><a href="/song?id=87111">好想好想</a></li><li><a href="/song?id=1895575577">摊牌</a></li><li><a href="/song?id=2033025814">舍离去 (男女合唱版)</a></li><li><a href="/song?id=2035966239">姑娘在远方</a></li><li><a href="/song?id=2022649218">自知结局</a></li><li><a href="/song?id=347758">大地</a></li><li><a href="/song?id=1479199254">愿爱无忧 (Live)</a></li><li><a href="/song?id=190449">吻别</a></li><li><a href="/song?id=1468115100">不为谁而作的歌</a></li><li><a href="/song?id=2037133801">海</a></li><li><a href="/song?id=2019279516">精卫</a></li><li><a href="/song?id=1996687234">拥抱直到世界毁灭</a></li><li><a href="/song?id=440208643">Psycho, Pt. 2</a></li><li><a href="/song?id=2019562367">恨幸福来过</a></li><li><a href="/song?id=29803535">爱笑的眼睛</a></li><li><a href="/song?id=1447663247">i still think of you</a></li><li><a href="/song?id=2037148762">Hata Boldimu</a></li><li><a href="/song?id=34228130">剩下的盛夏</a></li><li><a href="/song?id=1887031463">杭州,利群,你</a></li><li><a href="/song?id=2037054152">univus</a></li><li><a href="/song?id=2002926115">Players</a></li><li><a href="/song?id=2034542374">流浪猫日记2.0</a></li><li><a href="/song?id=1831899575">Умри, если меня не любишь</a></li><li><a href="/song?id=1913064744">Waiting for Love</a></li><li><a href="/song?id=1407525373">Ex B***h</a></li><li><a href="/song?id=479408221">其实都没有</a></li><li><a href="/song?id=1831946241">Sweet But Psycho</a></li><li><a href="/song?id=2034851941">16BOOSTERZ</a></li><li><a href="/song?id=1960885799">现代史-下</a></li><li><a href="/song?id=115794">一生不变</a></li><li><a href="/song?id=469998923">别问很可怕</a></li><li><a href="/song?id=2003472053">People</a></li><li><a href="/song?id=191252">我们都一样</a></li><li><a href="/song?id=1955734902">Feeling Falling(Song Version)</a></li><li><a href="/song?id=1937340367">A Thousand Years</a></li><li><a href="/song?id=550936829">Ferrari</a></li><li><a href="/song?id=5240852">自由行走的花</a></li><li><a href="/song?id=2034227756">风儿是从哪说</a></li><li><a href="/song?id=2035989613">弥渡山歌(笛子版)</a></li><li><a href="/song?id=1950524577">Molde Canticle</a></li><li><a href="/song?id=2035119931">再见罗曼史</a></li><li><a href="/song?id=2037843658">美しい鰭</a></li><li><a href="/song?id=16435051">Rolling in the Deep</a></li><li><a href="/song?id=2023931078">病</a></li><li><a href="/song?id=1888937212">NEW BOY</a></li><li><a href="/song?id=2034521128">叮咚</a></li></ul>

scrapy

Day8 - 3.scrapy基本使用_哔哩哔哩_bilibili

【左素爬虫】课26 微博Scrapy实现_哔哩哔哩_bilibili30min

前面也有写过,大家可以区看看看

什么是scrapy?

一爬虫中封装好的一个明星框架。功能:高性能的持久化存储,异步的数据下载,高性能的数据解析,分布式

twisted异步数据下载

在路径下载下安装轮子

pip install 轮子

操作

  1. 创建一个工程:scrapy startproject xxxPro
  2. 进入文件cd xxxPro
  3. 创建爬虫文件scrapy genspider spiderName[爬虫文件名字] www.xxx.com[爬虫网址]
  4. 执行工程:scrapy crawl spiderName[爬虫文件名字]

scrapy crawl first

演示

爬虫first文件讲解

定义一个类,继承spider,包含
三个变量:name:唯一标识 allowed_domains允许的域名
一个方法 : 自动请求,跟request不一样,解析

setting基础配置

不遵守robosts协议

打印日志信息: scrapy crawl first --nolog

LOG_LEVEL='ERROR' 只显示错误日志信息

请求delay相当于sleep

# Configure a delay for requests for the same website (default: 0)
# See Settings — Scrapy 2.8.0 documentation
# See also autothrottle settings and docs
DOWNLOAD_DELAY = 3

创建pipelines文件并修改

# Configure item pipelines
# See Item Pipeline — Scrapy 2.8.0 documentation
ITEM_PIPELINES = {
"Firstblood.pipelines.RequestsPipeline": 300,
}

爬虫文件的解析

微博爬虫文件书写

Sina Visitor System

设置cookie

日志输出

#初始化url

多个链接,可以放多个请求池

class FirstSpider(scrapy.Spider):

name = "first"

# allowed_domains = ["www.baidu.com"]

start_urls = ["https://weibo.com/ajax/profile/getImageWall?uid=2127946391&sinceid=0&has_album=true"]

#解析数据

def parse(self, response):

ImageWallDict=json.loads(response.text) #转换成字典类型数据

data=ImageWallDict['data'] if 'data' in ImageWallDict else {}

sinceId=data['since_id'] if 'since_id' in data else None

pics=data['list'] if 'list' in data else []

for pic in pics:

pid=pic['pid'] if 'pid' in pic else None

src='https://wx4.sinaimg.cn/mw2000/{}.jpg'.format(pid)

print(src)

# with open('weibo.html','w') as f:

# f.write(response.text)

print(response)

#翻页

if sinceId: #判断是否存在

next_page=self.url.format(sinceId)

#创建scrapy解析池

yield scrapy.Request(url=next_page, callback=self.parse) #解析器是他自己

items创建

2023-04-14 08:12:28 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://weibo.com/ajax/profile/getImageWall?uid=2127946391&sinceid=4887140483072307_4887143686343092|1034:4887143328
448620_20230406_-1&has_album=true> (referer: https://weibo.com/ajax/profile/getImageWall?uid=2127946391&sinceid=4887372570689565_4887149583794583|1034:4887148739100724_20230406_-1&has_album=true)

2023-04-14 08:13:49 [scrapy.extensions.logstats] INFO: Crawled 17 pages (at 6 pages/min), scraped 0 items (at 0 items/min)

2023-04-14 08:15:42 [scrapy.crawler] INFO: Received SIGINT twice, forcing unclean shutdown

scrapy爬虫错误一:无法爬到期望的数据

scrapy爬虫没有任何的返回数据( Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min))

这种情况一般有以下几种可能性:

1. 网络连接问题:爬虫无法连接目标网站,或者连接超时。你可以尝试手动访问目标网站,看是否能够正常访问。如果不能,那么就需要检查网络连接、DNS解析等问题。

2. User-Agent被禁用:一些网站会根据User-Agent屏蔽爬虫,在scrapy中可以通过设置User-Agent来规避这个问题。

3. Robots协议限制:如果网站开启了Robot协议限制,则爬虫将无法进行抓取。你可以在浏览器中查看网站的robots.txt文件以确认是否存在这样的限制。

4. 数据提取规则问题:爬虫虽然能够完成访问和请求,但是无法正确提取所需的数据,这可能是因为Xpath或CSS选择器使用不正确等问题导致的。建议在代码中加入日志或者调试信息,以便迅速排查问题。

5. 其他问题:还有一些其他可能的问题,例如爬虫程序本身逻辑错误、服务器限制等等。建议仔细检查代码,并根据需求调整相关参数。

scrapy爬虫错误一:无法爬到期望的数据_不要影响我叠Q的博客-CSDN博客

代码实列

Scrapy框架的使用之Scrapy爬取新浪微博 - 掘金 (juejin.cn)

GitHub - Python3WebSpider/Weibo: Weibo Spider Using Scrapy

崔清才Python3WebSpider (github.com)

配套文字娇嗔【稳定可用 | 持续更新】微博超级爬虫 | BuyiXiao's Blog

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哈都婆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值