Anton_Peplov,
если Вам ближе c#, то подход, предложенный
Xaositect, может быть реализован примерно так:
using System.IO;
using System.Xml;
using System.Xml.Xsl;
namespace ParseRss
{
class Program
{
const string xsl = @"
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:output method='text' />
<xsl:template match='/rss/channel' >
<xsl:for-each select='item' >
<xsl:value-of select='title' />
<xsl:text>
</xsl:text>
<xsl:text>	</xsl:text>
<xsl:value-of select='link'/>
<xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
";
static void Main(string[] args)
{
XslCompiledTransform xct = new XslCompiledTransform();
xct.Load(XmlReader.Create(new StringReader(xsl)));
xct.Transform(@"https://phys.org/rss-feed/", @"c:\Temp\result1.txt");
}
}
}
Если же RSS-канала нет, придется парсить HTML вручную. Понять структуру HTML можно просмотрев код страницы в браузере.
Для загрузки документа по протоколу HTTP обычно используется метод
WebClient.DownloadString.
В результате загрузки мы получаем HTML-строку размером ~200Kb, которую теперь надо каким-то образом распарсить на предмет добывания ссылок и их описаний. Парсить HTML можно какой-нибудь библиотекой (как уже упоминалось выше), а можно - вручную с использованием регулярных выражений.
В частности, в случае
https://phys.org/ "хорошие" ссылки выглядят примерно так:
Код:
<a href="https://phys.org/news/2017-08-collagen-cartilage-tissues-liquid-crystals.html">Collagen in cartilage tissues behaves like liquid crystals in a smart phone screen</a>
Т.е. URL содержит подстроку '/news/', и содержимое тега <a> не содержит вложенных тегов.
using System;
using System.Net;
using System.Text.RegularExpressions;
namespace ParsePhysOrg
{
class Program
{
static void Main(string[] args)
{
string html = new WebClient().DownloadString("https://phys.org/");
string re = @"<a\s+href=""([^"">]+/news/[^"">]+)""\s*>\s*([^<]+)\s*</a>";
MatchCollection matches = Regex.Matches(html, re);
foreach (Match match in matches) {
Console.WriteLine($"{match.Groups[1]}: {match.Groups[2]}");
}
}
}
}
Код:
Women may bear the brunt of climate change's impacts
https://phys.org/news/2017-08-women-brunt-climate-impacts.html
Researchers find monkey brain structure that decides if viewed objects are new or unidentified
https://medicalxpress.com/news/2017-08-monkey-brain-viewed-unidentified.html
Bio-inspired materials give boost to regenerative medicine
https://medicalxpress.com/news/2017-08-bio-inspired-materials-boost-regenerative-medicine.html
Evidence found of white dwarf remnant after supernova
https://phys.org/news/2017-08-evidence-white-dwarf-remnant-supernova.html
Industrial "edge cities" have helped China grow
https://phys.org/news/2017-08-industrial-edge-cities-china.html
Scientists improve brown dwarf weather forecasts
https://phys.org/news/2017-08-scientists-brown-dwarf-weather.html
Histone 1, the guardian of genome stability
https://phys.org/news/2017-08-histone-guardian-genome-stability.html
...
(Отказ от ответственности)
Приведенный выше код не претендует на полное решение задачи, поставленной в стартовом сообщении. Его единственная цель - продемонстрировать один из возможных подходов.