我怎样才能通过使用美丽汤通过网页抓取来访问 seq 标签数据



我是网页抓取的新手。我正在尝试从这里获取 FASTA 文件,但不知何故我不能。首先,问题开始为我span标签,我尝试了一些建议,但对我不起作用,我怀疑可能存在隐私问题

这个类中的 FASTA 文件,但是当我运行这段代码时,我只能看到 FASTA 标题:

url = "https://www.ncbi.nlm.nih.gov/nuccore/193211599?report=fasta"
res = requests.get(url)
soup = BeautifulSoup(res.text, "html.parser")
fasta_data = soup.find_all("div")
for link in soup.find_all("div", {"class": "seqrprt seqviewer"}):
    print link.text
url = "https://www.ncbi.nlm.nih.gov/nuccore/193211599?report=fasta"
res = requests.get(url)
soup = BeautifulSoup(res.text, "html.parser")
fasta_data = soup.find_all("div")
for link in soup.find_all("div", {"class": "seqrprt seqviewer"}):
    print link.text
##When I try to reach directly via span, output is empty.
div = soup.find("div", {'id':'viewercontent1'})
spans = div.find_all('span')
for span in spans:
    print span.string

每个抓取工作都涉及两个阶段:

  1. 了解要抓取的页面。(它是如何工作的?从Ajax加载的内容?重定向?发布?获取?内嵌框架?防刮的东西?...(

  2. 使用您喜欢的框架模拟网页

在处理第 1 点之前,不要编写任何代码。谷歌网络检查器是你的朋友,使用它!

关于您的网页,报表似乎已加载到查看器中,从以下网址获取数据:

https://www.ncbi.nlm.nih.gov/sviewer/viewer.fcgi?id=193211599&db=nuccore&report=fasta&extrafeat=0&fmt_mask=0&retmode=html&withmarkup=on&tool=portal&log$=seqview&maxdownloadsize=1000000

使用该网址,您将获得报告。

最新更新