rss_converter_facebook.com.xsl: fix scraping facebook.com pages once again
authorAntonio Ospite <ao2@ao2.it>
Mon, 11 Sep 2017 11:17:31 +0000 (13:17 +0200)
committerAntonio Ospite <ao2@ao2.it>
Mon, 11 Sep 2017 11:26:47 +0000 (13:26 +0200)
Tip: in order to get more posts, and not just the last two, append
"/posts" to the facebook page URL, or use the URL of the "See all" link
in the "Posts" section.

src/rss_converter_facebook.com.xsl

index def8e69..0750b30 100644 (file)
@@ -52,7 +52,7 @@
         name="page-id"
         select="substring-after(//meta[@property='al:android:url']/@content, 'fb://page/')"/>
 
         name="page-id"
         select="substring-after(//meta[@property='al:android:url']/@content, 'fb://page/')"/>
 
-    <xsl:template match="//div[contains(@class, 'fbUserContent') or contains(@class, 'userContentWrapper')]">
+    <xsl:template match="//div[contains(@class, 'fbUserPost')]">
         <xsl:variable name="story-id" select=".//input[@name='ft_ent_identifier']/@value"/>
         <xsl:variable
             name="item-permalink"
         <xsl:variable name="story-id" select=".//input[@name='ft_ent_identifier']/@value"/>
         <xsl:variable
             name="item-permalink"
 
     <xsl:template match="/">
         <xsl:variable name="channel-title" select="//title"/>
 
     <xsl:template match="/">
         <xsl:variable name="channel-title" select="//title"/>
-        <xsl:variable name="channel-link" select="//div[contains(@class, 'fbUserContent') or contains(@class, 'userContentWrapper')][1]//a[1]/@href"/>
-        <xsl:variable name="channel-image" select="//div[contains(@class, 'fbUserContent') or contains(@class, 'userContentWrapper')][1]//a[1]//img/@src"/>
+        <xsl:variable name="channel-link" select="//div[contains(@class, 'fbUserPost')][1]//a[1]/@href"/>
+        <xsl:variable name="channel-image" select="//div[contains(@class, 'fbUserPost')][1]//a[1]//img/@src"/>
 
         <rss version="2.0">
             <xsl:attribute name="xml:base"><xsl:value-of select="$BaseURL" /></xsl:attribute>
 
         <rss version="2.0">
             <xsl:attribute name="xml:base"><xsl:value-of select="$BaseURL" /></xsl:attribute>
                         <xsl:value-of select="$channel-image"/>
                     </url>
                 </image>
                         <xsl:value-of select="$channel-image"/>
                     </url>
                 </image>
-                <xsl:apply-templates select="//div[contains(@class, 'fbUserContent') or contains(@class, 'userContentWrapper')]"/>
+                <xsl:apply-templates select="//div[contains(@class, 'fbUserPost')]"/>
             </channel>
         </rss>
     </xsl:template>
             </channel>
         </rss>
     </xsl:template>