Это так похоже на другие посты на SO, например, здесь , я просто не вижу, что я делаю неправильно.
Я хочу очистить поле с надписью "активность"на этой странице, и я хочу, чтобы вывод выглядел следующим образом:
Таким образом, вы можете увидеть две основные функцииинтерес по сравнению с исходной веб-страницей (1) объединение нескольких таблиц в одну таблицу, просто путем создания нового столбца, если столбец еще не виден, и (2) я хочу извлечь фактический href для этого столбца, а не просто имя, например'Jacobsen et al', потому что я должен был в конечном итоге извлечь значение PMID (целое число) из href.
Это две мои цели, я написал этот код:
import requests
import pandas as pd
from bs4 import BeautifulSoup
for i in range(23,24):
# try:
res = requests.get("http://www.conoserver.org/index.php?page=card&table=protein&id=" + str(i))
soup = BeautifulSoup(res.content, 'lxml')
table = soup.find_all('table',{'class':'activitytable'})
for each_table in table:
#this can print references
print(each_table.a)
#this can print the data frames
df = pd.read_html(str(each_table))
print(df)
#how to combine the two?
Может кто-тоскажите мне, как правильно печатать href отдельно для каждой строки каждой таблицы (например, по существу, чтобы в каждую таблицу добавлялся дополнительный столбец с фактическим значением href ?; поэтому он должен распечатать три таблицы с дополнительным столбцом href в каждой таблице)
Тогда я не могуЧтобы сосредоточиться на том, как комбинировать таблицы, я только что упомянул здесь конечную цель на случай, если кто-то придумает более питонический способ убить двух зайцев одним выстрелом / на случай, если это поможет, но я думаю, что это разные проблемы.