您的网站被人订阅了吧?(浅谈Rss二.0)

通过本文你将得以知道如下内容:
1.什么是RSS
二.怎么着给协调的网址创制三个LANDSS源
三.如何订阅人家网址上的奇骏SS

 

什么是RSS?简而言之,LacrosseSS正是1种简单的音讯透露和传递格局,使得1个网址能够方便地调用其余提供GL450SS订阅服务的网址的剧情,从而形成“音信聚合”,让网址公布的内容在更加大的限定内传播。(引用网上的表明,作者以为那些说的很鲜明)

此处想象一下急需,写四个档次应用的壹密密麻麻一.0版本的插件,今后要新写2个连串,要求用这个插件的二.0版本,该如何是好?都更新成2.0本子?那样在此之前的类型都无法保险了

凯雷德SS源至少应当包涵2个频道(channel)
种种channel里面应该包蕴标题(title),链接(link),简介(description),项目等
而每1个连串一般都蕴涵多个标题,一段容易的牵线,还有一个U哈弗L链接(比如是1个网页的地点)。别的的消息,例如日期,创制者的名字等等,都以能够采取的。(越多关于酷路泽SS的专业请本身查阅有关文书档案)

此刻我们必要叁个虚拟环境,Python就协理那样2个插件,virtualenv

怎么样给协调的网站创设3个HummerH贰SS源
咱俩新建二个一般选用文本(CreatLacrossess.ashx).
代码v如下。代码内容很简单,注释也很明白

上面来设置一下:

图片 1图片 2using#region using
图片 3using System;
图片 4using System.Data;
图片 5using System.Text;
图片 6using System.Web;
图片 7#endregion
图片 8
图片 9namespace Rss
图片 10图片 11图片 12{  
图片 13    public class CreatRss : IHttpHandler
图片 14图片 15    图片 16{
图片 17
图片 18        public void ProcessRequest(HttpContext context)
图片 19图片 20        图片 21{
图片 22            context.Response.ContentType = “text/xml”;//设置输出内容为XML格式
图片 23
图片 24图片 25            预备数据#region 预备数据
图片 26            DataTable dt = new DataTable(“RssData”);
图片 27            dt.Columns.Add(“title”);
图片 28            dt.Columns.Add(“link”);
图片 29            dt.Columns.Add(“description”);
图片 30            dt.Columns.Add(“author”);
图片 31            dt.Columns.Add(“pubDate”, typeof(DateTime));
图片 32图片 33            dt.Rows.Add(new object[] 图片 34{ “IHttpHandlerFactory的采用(权限控制)①”, “http://www.cnblogs.com/leleroyn/archive/2008/06/11/1217432.html“, “看了Unity&WebForm(1): 自定义IHttpHandlerFactory使用Unity对ASP.NET Webform页面进行正视注入,我也按奈不住,把上次多少个品种里的自定义IHttpHandlerFactory实现权力控制的方案写了下来。。写的要紧,而且自已水平又有限,望大家指导~0~”, “Ants”, DateTime.Parse(“2008-06-11 15:52”) });
图片 35图片 36            dt.Rows.Add(new object[] 图片 37{ “IHttpHandlerFactory的施用(权限决定)二”, “http://www.cnblogs.com/leleroyn/archive/2008/06/11/1217432.html“, “看了Unity&WebForm(壹): 自定义IHttpHandlerFactory使用Unity对ASP.NET Webform页面进行信赖注入,小编也按奈不住,把上次多少个类型里的自定义IHttpHandlerFactory实现权力决定的方案写了下去。。写的干着急,而且自已水平又不难,望我们指引~0~”, “Ants”, DateTime.Parse(“2008-06-12 15:52”) });
图片 38图片 39            dt.Rows.Add(new object[] 图片 40{ “IHttpHandlerFactory的应用(权限决定)叁”, “http://www.cnblogs.com/leleroyn/archive/2008/06/11/1217432.html“, “看了Unity&WebForm(一): 自定义IHttpHandlerFactory使用Unity对ASP.NET Webform页面举办信赖注入,笔者也按奈不住,把上次多少个体系里的自定义IHttpHandlerFactory实现权力控制的方案写了下去。。写的焦急,而且自已水平又有限,望咱们指点~0~”, “Ants”, DateTime.Parse(“2008-06-13 15:52”) });
图片 41            DataView dv = dt.DefaultView;
图片 42            dv.Sort = “pubDate desc”;
图片 43            
图片 44            #endregion
图片 45            StringBuilder str = new StringBuilder();
图片 46            str.Append(“<?xml version=\”1.0\” encoding=\”utf-8\” ?> “);
图片 47图片 48            频道音讯区#region 频道消息区
图片 49            str.Append(“<rss version=\”2.0\”>”);  //起名RSS的版本      
图片 50            str.Append(“<channel>”);//频道
图片 51            str.Append(“<title>Ants 的博客</title>”);//频道的标题
图片 52            str.Append(“<link>http://www.cnblogs.com/leleroyn/&lt;/link&gt;”);
图片 53            str.Append(“<description>小编的宣言:1起学习,大家升高</description>”);
图片 54            str.Append(“<author>Ants</author>”);
图片 55            #endregion
图片 56图片 57            内容列表区#region 内容列表区
图片 58            for (int i = 0; i <= 2; i++)
图片 59图片 60            图片 61{
图片 62                str.Append(“<item>”);
图片 63                str.Append(string.Format(“<title>{0}</title>”, context.Server.HtmlEncode(dv[i][“title”].ToString())));//编码的标题
图片 64                str.Append(string.Format(“<link>{0}</link>”, dv[i][“link”].ToString()));
图片 65                str.Append(string.Format(“<description>{0}</description>”, context.Server.HtmlEncode(dv[i][“description”].ToString())));//编码项目标牵线
图片 66                str.Append(string.Format(“<author>{0}</author>”, dv[i][“author”].ToString()));
图片 67                str.Append(string.Format(“<pubDate>{0}</pubDate>”, dv[i][“pubDate”].ToString()));
图片 68                str.Append(“</item>”);
图片 69            }
图片 70            #endregion  
图片 71            str.Append(“</channel>”);
图片 72            str.Append(“</rss>”);
图片 73            context.Response.Write(str.ToString());
图片 74        }
图片 75
图片 76        public bool IsReusable
图片 77图片 78        图片 79{
图片 80            get
图片 81图片 82            图片 83{
图片 84                return false;
图片 85            }
图片 86        }
图片 87    }
图片 88}
图片 89

1.       pip3 install virtualenv

直白运维那几个文件就生成了属于大家的普拉多SS源啦,大家能够尝试,效果如下:
 图片 90

二.        cd进三个像存放虚拟环境的目录,创造虚拟环境    

什么在团结的网页中订阅KugaSS 
自己就以腾讯网首页原创区的TiggoSS源为例。
新建2个webform页面
剧情如下:

     virtualenv –no-site-packages venv

图片 91图片 92<%图片 93@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”Default.aspx.cs” Inherits=”Rss._Default” %>
图片 94
图片 95<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
图片 96
图片 97<html xmlns=”http://www.w3.org/1999/xhtml” >
图片 98<head runat=”server”>
图片 99    <title>无题目页</title>
图片 100</head>
图片 101<body>
图片 102    <form id=”form1″ runat=”server”>   
图片 103    
图片 104        <asp:Repeater ID=”Repeater1″ runat=”server”>
图片 105        <HeaderTemplate><ol></HeaderTemplate>
图片 106        <ItemTemplate>
图片 107图片 108        <li>标题:<a href='<%# Eval(“link”) %>’><%图片 109# Eval(“title”) %></a>
图片 110        <br />
图片 111图片 112        摘要:<%图片 113# Eval(“description”)%>
图片 114        <br />
图片 115图片 116        作者:<%图片 117# Eval(“author”)%>
图片 118        <br />
图片 119图片 120        时间:<%图片 121# Eval(“pubDate”)%>
图片 122        <br />
图片 123        <hr />
图片 124        </ItemTemplate>
图片 125        <FooterTemplate> </ol></FooterTemplate>
图片 126        </asp:Repeater>   
图片 127    
图片 128    </form>
图片 129</body>
图片 130</html>

        这些venv是名字,本身随便起名

后台代码如下:

 

图片 131using System;
图片 132using System.Linq;
图片 133using System.Xml.Linq;
图片 134
图片 135namespace Rss
图片 136图片 137图片 138{
图片 139    public partial class _Default : System.Web.UI.Page
图片 140图片 141    图片 142{
图片 143        protected void Page_Load(object sender, EventArgs e)
图片 144图片 145        图片 146{
图片 147            XDocument doc = XDocument.Load(“http://www.cnblogs.com/rss");//也可是别的RSS源
图片 148
图片 149            var query = from p in doc.Descendants(“item”) 
图片 150图片 151                        select new 图片 152
图片 153                            title = p.Element(“title”).Value,
图片 154                            link = p.Element(“link”).Value,
图片 155                            description = p.Element(“description”).Value ,
图片 156                            pubDate=p.Element(“pubDate”).Value,
图片 157                            author = p.Element(“author”).Value
图片 158                        };//取item下的成分值
图片 159           
图片 160            Repeater1.DataSource = query;
图片 161            Repeater1.DataBind();
图片 162
图片 163
图片 164        }
图片 165    }
图片 166}
图片 167

叁.激活虚拟环境   

运转就可以啊。那几个就不贴图啦。
本章内容大概但很实用,希望对我们有赞助,献丑啦图片 168

    source venv/bin/activate    #source是linux上边包车型大巴环境

*                      在windows下,直接cd进scripts目录,执行activate即可
*

         那里的venv就是地点13分名字

 

    当出现那样的格式,就代表现在居于虚拟环境中

F:\代码库\虚拟环境virtualenv\ven_test\Scripts>activate

(ven_test) F:\代码库\虚拟环境virtualenv\ven_test\Scripts>

 

  此时的条件中是尚未插件的,因为我们创建这些虚拟环境的时候是选择 no-site-packages

  所以,供给怎么着插件都亟需重新安装

四.脱离虚拟环境

  deactivate 

(ven_test) F:\代码库\虚拟环境virtualenv\ven_test\Scripts>deactivate
F:\代码库\虚拟环境virtualenv\ven_test\Scripts>

 

 


 

实际上在pycharm中,也为大家封装了这一个效用

上面演示一下在pycharm中怎么着使用虚拟环境

壹.创办虚拟环境

图片 169

 

图片 170

此间能够采用是或不是一连在此以前版本的插件

确认后,就曾经创制了一个虚拟环境,然后选择到大家的品种中

图片 171

 

在档次布置那里,把解释器改成大家新建的老大虚拟环境就好了

图片 172

 

 


 

那是新建虚拟环境,假诺是把已某些环境添加到pycharm中,须要选取这些

图片 173

接下来找到要添加的条件的scripts目录下的Python.exe,添加进去就了

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图