爬取电影资源之应用下载篇

经过“爬取电影资源之网页爬取篇”的介绍,我们能够自动获取6V电影网每天推荐的电影资源。现在,我们就做一个应用程序实现电影的自动爬取与下载,如下图:
在这里插入图片描述
设计思路:

  1. 制作一个按钮“获取数据”,点击按钮后程序自动运行网页爬取的Python脚本文件。
  2. 程序获取Python脚本的输出数据,将爬取的电影信息(名称与评分)按列显示。
  3. 点击对应的电影名称,显示其所有的下载资源(磁力和电驴)
  4. 点击对应下载链接,程序自动调用迅雷来下载电影。
    在这里插入图片描述
    构建窗体比较简单,你们可以看看C#的Winform编程。这里我就主要谈谈:1.C#调用Python脚本;2.C#调用迅雷

1.C#调用Python
我上网查了下,大概有两种(不全的话请告知,谢谢)
通过IronPython来调用的。
使用这个dll运行python脚本,并不需要安装python解释器。可以看这几篇博客:
C#调用Python脚本(用IronPython) https://www.cnblogs.com/shiyingzheng/p/6054835.html
https://www.cnblogs.com/zeroone/p/3632364.html

运用C#的Process类来调用。
运用Process类开启另一个进程,启动python.exe应用程序(安装Python后,可在其安装目录下找到)。通过python.exe来执行python脚本,然后用Process类的OutputDataReceived事件获取脚本的输出数据。Process类的使用可看这些:
C#的Process类:
https://docs.microsoft.com/zh-cn/dotnet/api/system.diagnostics.process?redirectedfrom=MSDN&view=netframework-4.7.2
C# 调用可执行程序 Process类的用法:
http://blog.sina.com.cn/s/blog_a0f5da7001010b3h.html

2.C#调用迅雷
以前用过C#通过迅雷提供的COM组件来调用迅雷,而现在发现好像不能用了。上网查了查,好像是版本的问题,目前的新版本(我的是迅雷X)好像丢弃了COM组件。现在大多数使用迅雷下载开放引擎这个东西,它只支持HTTP协议,但比COM组件好用(网上说的,我自己没用过)。这里呢,我还是用的COM组件的方法调用迅雷(要下载个低版本的迅雷),比较简单。添加COM组件后,三句话就OK了(URLText是下载链接):

THUNDERAGENTLib.AgentClass agent = new THUNDERAGENTLib.AgentClass();//创建对象
agent.AddTask(URLText);//添加任务 
agent.CommitTasks2(1);//提交

具体调用方法可以见下面的博客,讲的很详细:
C#调用迅雷(老版本的):
http://www.cnblogs.com/yuankexiong313/archive/2010/04/22/1717852.html
C# 调用迅雷 7 迅雷下载开放引擎:
https://www.cnblogs.com/snake-hand/p/3157132.html
最后我的调用截图如下:
在这里插入图片描述
最开始本打算一个星期写一篇的,但现在发现高估了自己。前篇博客都不知道是什么时候写的了(好像是一年前,哈哈哈哈,尴尬)。写这东西,要自己发掘生活中与编程有关的,有趣的,要不然感觉会写不下去(⊙x⊙;)。再就是,毕竟不是搞编程专业的,只能一边学一边记录,自己不是很懂就写博客,不说会被别人说笑,误导别人就不好了。只不过以后我还是要尽量坚持,就当做是一种无聊的消遣吧,比玩游戏要强些。
下面就附上所有的代码:

链接:https://pan.baidu.com/s/1e7j3DQPsOuxGlJLArOK0PQ
提取码:0zm4

代码是一年前写的,哈哈,自己都不知道写的啥鬼东西。有错的和不足的地方请多多包含。试了下,虽然有点小问题,但还能用,能够获取电影的资源链接。假如有其他问题,大家就做个参考。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值