Разбор с использованием Beautifulsoup, чтобы получить точное слово - PullRequest
1 голос
/ 12 апреля 2019

Я хочу извлечь нужное слово с помощью Beautifulsoup.Для своего приложения я использовал arxiv API, чтобы получить общее количество запросов на поиск по связанным статьям.Для моего запроса я использовал электрон для поиска.API возвращает около 144055 как общий результат поиска.Я хочу извлечь это общее число.

import urllib.request as ur
from bs4 import BeautifulSoup

url = 'http://export.arxiv.org/api/query?search_query=all:electron' # arxiv:api
s = ur.urlopen(url)
sl = s.read()
soup = BeautifulSoup(sl, 'html.parser')
print(soup.prettify('latin-1'))
desire_word=soup.find('opensearch:totalresults')
print(desire_word)

Я печатаю слово желания.Но я пришел как весь текст.

<opensearch:totalresults xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">144055</opensearch:totalresults>

Как я могу получить только общее количество (144055) ?.

Ответы [ 2 ]

1 голос
/ 12 апреля 2019

вы были близки

print(desire_word.text)
0 голосов
/ 12 апреля 2019

Недостаточно репутации, чтобы комментировать, но что-то заметить, когда вы сталкиваетесь с ситуацией, когда вы не уверены, что возвращается:

print(type(desire_word))
print(dir(desire_word))

Таким образом, вы сможете увидеть это

1) desire_word - это не строка, это элемент

2) desire_word имеет атрибут с именем «текст» и «звучит полезно, позвольте мне попробовать desire_word.text»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...