CoderCastrov logo
CoderCastrov
NLP

Анализ NLP веб-статьи на Python

Анализ NLP веб-статьи на Python
просмотров
6 мин чтение
#NLP

Пайплайн получения и анализа веб-документов

Присоединяйтесь к Medium по моей реферальной ссылке - George Pipis

Читайте все истории от George Pipis (и тысячи других писателей на Medium). Ваша плата за членство напрямую поддерживает...

jorgepit-14189.medium.com

Как специалист по обработке данных и NLP, вам может потребоваться извлечь веб-статьи и проанализировать их. Простой способ извлечь чистый текст веб-страниц - использовать библиотеку newspaper3k. В этом руководстве мы будем работать с блогом Predictive Hacks Data Science, начиная с статьи "Как получить работу в области Data Science без опыта".

Вы можете установить библиотеку newspaper3k, выполнив следующую команду:

conda install -c conda-forge newspaper3k# ORpip3 install newspaper3k

Как извлечь текст из веб-статьи

Давайте посмотрим, как легко мы можем получить текст статьи Predictive Hacks.

from newspaper import Article# введите требуемый URL
url = '[https://predictivehacks.com/how-to-get-a-data-science-job-without-experience/'](https://predictivehacks.com/how-to-get-a-data-science-job-without-experience/')article = Article(url)
article.download()
article.parse()# Получить текст статьи:
print(article.text)

Вывод:

Что такое "рабочий опыт" на практике?

Допустим, вы - кандидат, недавно окончивший университет с дипломом бакалавра/магистра по математике, информатике, инженерии или другим связанным областям, и вы хотите начать карьеру в области науки о данных. Оценки и университетский диплом указывают на вашу теоретическую базу и способность к обучению новым вещам. Однако в реальном мире все по-другому, не обязательно сложнее, и некоторым образом менеджеры по найму хотели бы узнать больше о вас и особенно о том, как вы работаете.

Связанный "рабочий опыт" доказывает, что вы можете выполнять требуемую работу. Что вы надежны, у вас есть энтузиазм к своей науке и вы хороши в своей работе. Другими словами, для компании кандидат с соответствующим рабочим опытом подразумевает меньший риск.

Но, как мы уже сказали, у вас нет рабочего опыта, давайте посмотрим, как вы можете доказать им, что вы надежны и хороши в своей работе, чтобы они могли доверять вам, т.е. нанять вас!

Эра рейтингов и отзывов

Очевидно, мы живем в эпоху рейтингов и отзывов. Вы не смотрите отзывы на Booking.com и Airbnb, когда планируете, где остановиться, не смотрите отзывы на TripAdvisor и Google Reviews, когда выбираете ресторан для посещения, не смотрите отзывы о фильме, прежде чем посмотреть его, и так далее.

То же самое относится и к компаниям. Они хотят получить отзыв о вас. Имеется в виду, что обычно просят указать рекомендации перед тем, как нанять кого-то, и также предпочитают нанять кого-то, кто является рекомендацией существующего сотрудника. Это происходит потому, что они хотят узнать больше о своем потенциальном коллеге, прежде чем приступить к найму.

Давайте посмотрим, как вы можете получить "отзывы" с рынка и параллельно показать свою работу.

Stack Overflow

Никто не может игнорировать пользователя с высокой репутацией на Stack Overflow. Очевидно, это указывает на то, что вы действительно увлечены своей наукой, вы можете быть хорошим командным игроком, предлагая решения своей команде, вы компетентны в своей области и вносите вклад в свою сообщество. Кроме того, вы даете возможность всему миру посмотреть на ваш профиль и вашу работу.

Блоггинг

Вы привлечете внимание менеджера по найму, если будете писать в блоге. Предположим, вы пишете на Medium и у вас много подписчиков и аплодисментов. Большое количество подписчиков означает, что некоторые люди нашли вашу статью полезной. Это похоже на положительный отзыв, полученный с рынка и сообщества. Это то, что вы можете использовать как рабочий опыт и также может быть витриной того, что вы можете делать. Кроме того, ваши статьи отражают, в некотором смысле, ваш стиль работы и вашу область интересов и экспертизы.

Фрилансер на веб-платформе

Существует много платформ, таких как Upwork, Fiverr, PeoplePerHour, где вы можете выполнять проекты по науке о данных. Это хороший старт и может быть использован как связанный рабочий опыт. Кроме того, на этих платформах вы получаете рейтинги и отзывы от своих клиентов. Очевидно, сильный профиль на таких платформах доказывает вашу способность предоставлять высокое качество. Это также указывает на вашу способность общаться с клиентами, быть надежным и иметь самосознание.

Учетная запись GitHub

Я бы рекомендовал иметь учетную запись GitHub, которая является своего рода портфолио для специалиста по науке о данных. Предоставляя свой профиль, вы даете им возможность увидеть, как вы пишете код, какие проекты вы выполнили и так далее.

Учетная запись Kaggle

Kaggle - крупнейшее в мире сообщество по науке о данных с мощными инструментами и ресурсами, помогающими вам достичь ваших целей в области науки о данных. Если вы участвуете во многих соревнованиях и имеете относительно хороший результат, это указывает на то, что вы хороши в науке о данных, что вы работали с реальными проблемами и сталкивались с различными проблемами.

Подводя итог

Если у вас нет рабочего опыта и вы видите, что в большинстве вакансий требуется опыт, не разочаровывайтесь. Если вы любите свою работу и хороши в ней, вопрос времени, когда вы войдете в индустрию. Самая опасная часть - это пробел в вашей карьере. Поэтому, во время, когда вы не работаете и ищете работу, попробуйте вложиться в то, что мы упомянули выше. Таким образом, вы улучшите свои навыки, такие как письмо, кодирование и т.д., получите практический опыт и в то же время сможете использовать их как связанный рабочий опыт.

Таким образом, кандидат с репутацией 1000 баллов на Stack Overflow, помеченный как лучший фрилансер на веб-платформах с 500 подписчиками на Medium и с активным профилем Kaggle, его/ее заявка на работу будет выделяться и будет запрошена на собеседование, где на этом этапе также оцениваются другие вещи, такие как соответствие корпоративной культуре, межличностные навыки и т.д.

Мы можем извлечь другие функции, такие как "верхнее изображение", "авторы" и "дата публикации".

Анализ NLP

Библиотека newspaper3k предоставляет некоторые основные функции NLP, такие как "извлечение ключевых слов" и "суммирование текста". Давайте посмотрим на примеры ниже.

Извлечение ключевых слов

article.nlp() 
article.keywords

Вывод:

['хакеры', 'данные', 'опыт', 'работа', 'вещи', 'обзоры', 'профиль', 'связанный', 'наука', 'хороший', 'работа', 'прогнозирование']

Суммирование текста

print(article.summary)

Вывод:

Связанный "опыт работы" доказывает, что вы можете выполнять требуемую работу. Другими словами, для компании кандидат с соответствующим опытом работы означает меньший риск. Фрилансер на веб-платформе. Существует много платформ, таких как Upwork, Fiverr, PeoplePerHour, где вы можете выполнять проекты по науке о данных. Аккаунт Kaggle. Kaggle - это крупнейшее сообщество по науке о данных с мощными инструментами и ресурсами, которые помогут вам достичь ваших целей в области науки о данных. Таким образом, вы улучшите свои навыки, такие как письмо, программирование и т.д., получите практический опыт и в то же время сможете использовать их как соответствующий опыт работы.

Извлечение URL статей

Мы можем извлечь URL адреса публикаций, которые появляются на главной странице. Например:

import newspaper 
predictive_hacks = newspaper.build('https://predictivehacks.com') 
for article in predictive_hacks.articles: 
    print(article.url)

Вывод:

[https://predictivehacks.com/how-to-create-a-simple-streamlit-app-how-to-deploy-it-on-heroku/](https://predictivehacks.com/how-to-create-a-simple-streamlit-app-how-to-deploy-it-on-heroku/)
[https://predictivehacks.com/10-tips-and-tricks-for-data-scientists-vol-12/](https://predictivehacks.com/10-tips-and-tricks-for-data-scientists-vol-12/)
[https://predictivehacks.com/python-pip-tips-for-data-scientists/](https://predictivehacks.com/python-pip-tips-for-data-scientists/)
[https://predictivehacks.com/unix-sed-command-tutorial-with-examples/](https://predictivehacks.com/unix-sed-command-tutorial-with-examples/)
[https://predictivehacks.com/how-to-connect-snowflake-with-s3-and-ec2-using-python/](https://predictivehacks.com/how-to-connect-snowflake-with-s3-and-ec2-using-python/)
[https://predictivehacks.com/awk-tutorial-for-data-scientists-and-engineers/](https://predictivehacks.com/awk-tutorial-for-data-scientists-and-engineers/)
[https://predictivehacks.com/how-to-choose-and-apply-the-right-statistical-test-in-python/](https://predictivehacks.com/how-to-choose-and-apply-the-right-statistical-test-in-python/)
[https://predictivehacks.com/interview-question-a-variation-of-russian-roulette/](https://predictivehacks.com/interview-question-a-variation-of-russian-roulette/)
[https://predictivehacks.com/how-to-generate-the-requirements-of-your-python-project-based-on-your-imports/](https://predictivehacks.com/how-to-generate-the-requirements-of-your-python-project-based-on-your-imports/)
[https://predictivehacks.com/how-to-schedule-tasks-in-snowflake/](https://predictivehacks.com/how-to-schedule-tasks-in-snowflake/)

Итоги

Я обнаружил, что newspaper3k работает очень быстро и отлично подходит для извлечения текста из веб-статьи. Однако я предпочел бы Transformers для суммирования текста


Опубликовано на https://predictivehacks.com.

newspaper3k