Я пытаюсь извлечь опубликованные идентификаторы из опубликованных URL-адресов, используя https://pypi.org/project/pymed/.
Проблема: несмотря на правильные входные данные для всего моего для l oop, моего "опубликованного запроса "видимо выполняется только на первой итерации? Пожалуйста, помогите.
url_list = pd.Series of URLs, dtype='str'
ID_list = list(range(0, len(url_list)))
for i in url_list:
spider = Pubmed("MyTool", my_email)
url = url_list.iloc[i].to_string(index=False)
print(url) #CORRECTLY ITERATES
if re.search(pattern, url):
lookup = spider.query(url) #Unique <class itertools.chain object>
results = list(lookup) #Unique <'pymed.article.PubMedArticle' object>
ID = results.pop().pubmed_id
#OR
ID = results[0].pubmed_id
print(ID) #RETURNS ONLY THE FIRST ID
ID_list[i] = ID
else:
ID_list[i] = None
print("Extracted " + url + " with ID: " + ID)
Я пробовал установить для паука и поиска переменные на None в конце всего l oop, а также с помощью "del VAR" на обоих из них.
Ничего не дает. По какой-то причине метод spider.query () получает только первый URL-адрес, на который он подается. Обратите внимание, что я также пытался поместить паука Pubmed () вне для l oop, где, вероятно, он должен go, но я старался быть тщательным.
Большое спасибо за помощь, и Я прошу прощения за любые проблемы, воспроизводящие это, или с любой стилистикой c, которая причиняет вам боль и страдание.