<MyRusakov.ru />

Программирование на C++ с Нуля до Гуру

Программирование на C++ с Нуля до Гуру

Данный курс научит Вас программировать на языке C++, который, несмотря на свой почтенный возраст, необычайно сильно востребован. Курс состоит из 6 разделов, посмотрев которые и выполнив все упражнения, Вы с нуля освоите этот язык и сможете создавать самые разные проекты любой сложности на C++.

Для закрепления материала из уроков к ним идёт множество упражнений.

Дополнительно к курсу идёт вспомогательная система, которая не даст Вам забросить начатое на полпути.

Также вместе с курсов Вы получаете Бонус "Программирование на C++ в Unreal Engine", в котором Вы научитесь создавать игры на C++ с использованием этого движка.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Парсинг сайта вакансии на Python. Часть 2. Отображение вакансий

Парсинг сайта вакансии на Python. Часть 2. Отображение вакансий

Доброго времени суток! В прошлой статье мы рассмотрели вариант парсинга вакансий с сайта в JSON, а в данной статье рассмотрим как этот **JSON-файл** с вакансиями можно отобразить на странице.

Файл с вакансиями в формате JSON:


[
    {
        "url": "https://{САЙТ}/vacancies/0001",
        "company": "Компания 1",
        "companyAbout": "Разработка CRM и EPR-систем",
        "title": "Web-разработчик",
        "description": "Описание вакансии с html-тегами",
        "salary": "От 150 000 до 300 000 ₽",
        "requiredSkills": "Бэкенд, Средний (Middle) • Git • PHP • ООП • Linux • SQL",
        "locationAndTypeOfEmployment": "Москва • Полный рабочий день • Можно удаленно"
    },
    {
        "url": "https://{САЙТ}/vacancies/0002",
        "company": "Компания 2",
        "companyAbout": "Международная металлургическая и горнодобывающая компания",
        "title": "Middle fullstack-разработчик",
        "description": "Описание вакансии",
        "salary": "не указана",
        "requiredSkills": "Разработка ПО, Средний (Middle) • PHP • Apache • MySQL",
        "locationAndTypeOfEmployment": "Новокузнецк, Новосибирск, Томск • Полный рабочий день"
    }
]

HTML-код и JavaScript-код, который отображает вакансии:


<!doctype html>
<html lang="en">
<head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"
          integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">

    <title>Вакансии</title>

    <style>
        img {
            width: 100%;
        }
    </style>
</head>
<body>

    <div id="root"></div>

    <script>
        // карточка вакансии
        function VacancyCard(
            { url, company, companyAbout, title, 
              description, salary, requiredSkills, 
              locationAndTypeOfEmployment }
        )
        {
            // шаблонные строки с интерполяцией
            return `
                <div class="card mb-2">
                    <div class="card-body">
                        <h4 class="card-title mb-2">${title}</h4>
                        <h6 class="card-subtitle mb-3 text-muted">${company} • ${companyAbout}</h6>

                        <div class="mb-2">
                            <div class="text-muted">Зарплата</div>
                            <span class="card-title">${salary}</span>
                        </div>

                        <div class="mb-2">
                            <div class="text-muted">Требуемые навыки</div>
                            <span class="card-title">${requiredSkills}</span>
                        </div>

                        <p class="card-text">${description}</p>
                    </div>
                </div>
            `;
        }

        function App(vacancies) {

            return `
                <div class="container my-4">
                    <h3 class="mb-3">Вакансии</h3>
                    ${vacancies}
                </div>
            `
        }


        const rootElement = document.getElementById('root');

        // читаем вакансии из файла и отображаем в элементе root
        fetch('parsed_vacancies.json')
            .then(res => res.json())
            .then(data => {
                const vacanciesHtml = data.map(VacancyCard).join('');
                rootElement.innerHTML = App(vacanciesHtml);
            });


    </script>


    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"
            integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p"
            crossorigin="anonymous"></script>

</body>
</html>

Вот таким образом мы отобразили извлеченные ранее вакансии в интерфейсе пользователя.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.