用Python从网页检索信息?
我有以下一页: 我希望通过Python执行外部搜索,从中提取一些信息。也许听起来很简单,但我以前没有编写过web应用程序 因此,我想在搜索框中输入如下内容:用Python从网页检索信息?,python,Python,我有以下一页: 我希望通过Python执行外部搜索,从中提取一些信息。也许听起来很简单,但我以前没有编写过web应用程序 因此,我想在搜索框中输入如下内容: import requests from bs4 import * id = "NONHSAT146018" page = requests.get("http://www.noncode.org/show_rna.php?id=" + id) soup = BeautifulSoup(page
import requests
from bs4 import *
id = "NONHSAT146018"
page = requests.get("http://www.noncode.org/show_rna.php?id=" + id)
soup = BeautifulSoup(page.content, "html.parser")
element = soup.findAll('table', class_="table-1")[1]
element2 = element.findAll('tr')[1]
element3 = element2.findNext('td')
your_data = str(element3.renderContents(), "utf-8")
print(your_data)
非HSAT146018.2
要执行搜索并从生成的网页中删除,请执行以下操作:
从结果中,我需要提取表示序列的字段。我已经阅读了一些关于BeatifulSoup库的信息和一些示例,但是它们没有包含在php表单的地址中。我非常感谢你在这件事上的帮助。谢谢
更新:根据用户的建议,在@Lukas Newman的帮助下,我做了以下工作:
data="NONHSAT146018.2"
page = requests.get("http://www.noncode.org/show_rna.php?id=" + data)
soup=BS(page.content,'html.parser')
target = soup.find('h2',text='Sequence')
print(target)
target = soup.find('table',text='table-1')
print(target)
table = soup.find('table', attrs={'class'},text='table-1')
print(table)
当我检查结果时,我发现序列在以下字段中:
如何使用Python提取该部分?查看url
http://www.noncode.org/show_rna.php?id=NONHSAT000002
搜索只是作为get参数传递的。因此,要访问侧边,只需将起始url设置为:
import requests
from bs4 import *
id = "NONHSAT146018"
page = requests.get("http://www.noncode.org/show_rna.php?id=" + id)
soup = BeautifulSoup(page.content, "html.parser")
element = soup.findAll('table', class_="table-1")[1]
element2 = element.findAll('tr')[1]
element3 = element2.findNext('td')
your_data = str(element3.renderContents(), "utf-8")
print(your_data)
请花点时间阅读和阅读。通过遵循这些文章中的提示,您将获得更好的结果。谢谢@accdias,但是这个示例只是从这个页面检索信息。我用BS编写的代码没有检索到任何数据。尽管它不起作用,但在这里向我们展示您的尝试是一种很好的做法。谢谢您的建议@accdias,我会记住以后的帖子。谢谢@LukasNeumann,我收到了200条回复,我相信该页面已经下载,但是如何获得特定的序列部分呢?你能帮我一把吗?@有点确定,我建议你看看这个:基本上,你需要做的下一件事是获取带有“page.content”的页面的html,然后用beautiful soup解析它以找到你的序列。如果您需要更多帮助,请随时问我。谢谢@Lukas Neumann,您非常友好,我将尝试编写此代码,如果我被绊倒,我会给您回复。谢谢。我已经试着找回序列了,但是一点运气都没有。我在网页的转储中看到它没有出现,但我读到这可能是因为数据是动态创建的。你能帮我提取那个dna序列吗?@Little我把整个溶液放在我的awnser中,基本上它需要第二个元素,在类“table-1”中,然后是第二个“tr”,然后是“td”。最后,它获取文本并将其转换为utf-8。在浏览器中检查站点时,可以“遵循”此路径。我希望我能帮助你,如果你有更多的问题,请随意问更多!