1
- /*! rss-parser 2.2.2 */
1
+ /*! rss-parser 2.2.4 */
2
2
3
3
( function ( f ) { if ( typeof exports === "object" && typeof module !== "undefined" ) { module . exports = f ( ) } else if ( typeof define === "function" && define . amd ) { define ( [ ] , f ) } else { var g ; if ( typeof window !== "undefined" ) { g = window } else if ( typeof global !== "undefined" ) { g = global } else if ( typeof self !== "undefined" ) { g = self } else { g = this } g . RSSParser = f ( ) } } ) ( function ( ) { var define , module , exports ; return ( function e ( t , n , r ) { function s ( o , u ) { if ( ! n [ o ] ) { if ( ! t [ o ] ) { var a = typeof require == "function" && require ; if ( ! u && a ) return a ( o , ! 0 ) ; if ( i ) return i ( o , ! 0 ) ; var f = new Error ( "Cannot find module '" + o + "'" ) ; throw f . code = "MODULE_NOT_FOUND" , f } var l = n [ o ] = { exports :{ } } ; t [ o ] [ 0 ] . call ( l . exports , function ( e ) { var n = t [ o ] [ 1 ] [ e ] ; return s ( n ?n :e ) } , l , l . exports , e , t , n , r ) } return n [ o ] . exports } var i = typeof require == "function" && require ; for ( var o = 0 ; o < r . length ; o ++ ) s ( r [ o ] ) ; return s } ) ( { 1 :[ function ( require , module , exports ) {
4
4
var Entities = require ( "entities" ) ;
@@ -16,6 +16,7 @@ var ITEM_FIELDS = [
16
16
'link' ,
17
17
'pubDate' ,
18
18
'author' ,
19
+ 'content:encoded' ,
19
20
]
20
21
21
22
var stripHtml = function ( str ) {
@@ -40,23 +41,27 @@ var getContent = function(content) {
40
41
var parseAtomFeed = function ( xmlObj , callback ) {
41
42
var feed = xmlObj . feed ;
42
43
var json = { feed : { entries : [ ] } } ;
43
- if ( feed . link [ 0 ] && feed . link [ 0 ] . $ . href ) {
44
- json . feed . link = feed . link [ 0 ] . $ . href ;
44
+ if ( feed . link ) {
45
+ if ( feed . link [ 0 ] && feed . link [ 0 ] . $ . href ) json . feed . link = feed . link [ 0 ] . $ . href ;
46
+ if ( feed . link [ 1 ] && feed . link [ 1 ] . $ . href ) json . feed . feedUrl = feed . link [ 1 ] . $ . href ;
45
47
}
46
- if ( feed . link [ 1 ] && feed . link [ 1 ] . $ . href ) {
47
- json . feed . feedUrl = feed . link [ 1 ] . $ . href ;
48
- }
49
- if ( feed . title [ 0 ] ) {
50
- json . feed . title = feed . title [ 0 ] ;
48
+ if ( feed . title ) {
49
+ var title = feed . title [ 0 ] || '' ;
50
+ if ( title . _ ) title = title . _
51
+ if ( title ) json . feed . title = title ;
51
52
}
52
53
var entries = feed . entry ;
53
54
( entries || [ ] ) . forEach ( function ( entry ) {
54
55
var item = { } ;
55
- if ( entry . title ) item . title = entry . title [ 0 ] ;
56
- if ( entry . link ) item . link = entry . link [ 0 ] . $ . href ;
57
- if ( entry . updated ) item . pubDate = new Date ( entry . updated [ 0 ] ) . toISOString ( ) ;
58
- if ( entry . author ) item . author = entry . author [ 0 ] . name [ 0 ] ;
59
- if ( entry . content ) {
56
+ if ( entry . title ) {
57
+ var title = entry . title [ 0 ] || '' ;
58
+ if ( title . _ ) title = title . _ ;
59
+ if ( title ) item . title = title ;
60
+ }
61
+ if ( entry . link && entry . link . length ) item . link = entry . link [ 0 ] . $ . href ;
62
+ if ( entry . updated && entry . updated . length ) item . pubDate = new Date ( entry . updated [ 0 ] ) . toISOString ( ) ;
63
+ if ( entry . author && entry . author . length ) item . author = entry . author [ 0 ] . name [ 0 ] ;
64
+ if ( entry . content && entry . content . length ) {
60
65
item . content = getContent ( entry . content [ 0 ] ) ;
61
66
item . contentSnippet = getSnippet ( item . content )
62
67
}
@@ -90,7 +95,8 @@ var parseRSS2 = function(xmlObj, callback) {
90
95
entry . contentSnippet = getSnippet ( entry . content ) ;
91
96
}
92
97
if ( item . guid ) {
93
- entry . guid = item . guid [ 0 ] . _ ;
98
+ entry . guid = item . guid [ 0 ] ;
99
+ if ( entry . guid . _ ) entry . guid = entry . guid . _ ;
94
100
}
95
101
if ( item . category ) entry . categories = item . category ;
96
102
json . feed . entries . push ( entry ) ;
@@ -123,7 +129,6 @@ Parser.parseURL = function(url, callback) {
123
129
res . on ( 'end' , function ( ) {
124
130
return Parser . parseString ( xml , callback ) ;
125
131
} )
126
- res . on ( 'error' , callback ) ;
127
132
} )
128
133
req . on ( 'error' , callback ) ;
129
134
}
0 commit comments