Взять один элемент из HTML.AngleSharp + htmlParsing xamarin - PullRequest
0 голосов
/ 19 марта 2019

Здравствуйте, извините, мой плохой английский!

Я хочу взять название книги, имя автора, описание книги и код ISBN, введя страницу идентификатора - образец страницы

Я могу взять название книги, потому что это один элемент:

class OzonParser : IParser<string[]>
{

    public string[] Parse(IHtmlDocument document)
    {
        var list = new List<string>();
        var title = document.QuerySelectorAll("h1").Where(item => item.ClassName != null && item.ClassName.Contains("bItemName")).First();
        list.Add(title.TextContent);
        return list.ToArray();
    }

но у меня проблемы с именем автора

var items = document.QuerySelectorAll("a").Where(item => item.ClassName != null && item.ClassName.Contains("eItemProperties_href"));
* +1012 *enter image description here
element xpath="//*[@id="PageCenter"]/div[2]/div[1]/div[1]/div[2]/div[2]/div[4]/div/div[1]/div[2]/div[2]/a" 
selector="#PageCenter > div:nth-child(2) > div.bDetailPage > div.bDetailHeadBlock > div.bBaseInfoColumn > div.bContentColumn > div.bItemCompositionLink > div > div.eItemProperties_list.mHideReadMore > div:nth-child(2) > div.eItemProperties_text > a"
  1. Пожалуйста, помогите мне взять автора книги и получить его по типу строки.
  2. Можно ли одним способом получить название, описание, имя автора?

И получить-установить, как book.title = значение, book.description = значение, имя автора = значение

Спасибо, что нашли время, чтобы прочитать.

1 Ответ

0 голосов
/ 20 марта 2019

Наконец я беру имя автора

QuerySelectorAll("div[itemprop*='author']")
...