我想把一组网页的数据拉下来。在
以下是URL的示例:
http://www.signalpeptide.de/index.php?sess=&m=listspdb_mammalia&s=details&id=3&listname=
我的问题是:
我知道我需要的两行代码是以某种方式列出一个数字列表,然后用这个代码循环通过这些数字,以下拉出每页的文本(解析文本本身是另一天的工作):
import urllib2
from bs4 import BeautifulSoup
web_page = "http://www.signalpeptide.de/index.php?sess=&m=listspdb_mammalia&s=details&id=" + id_name + "&listname="
page = urllib2.urlopen(web_page)
soup = BeautifulSoup(page,'html.parser')
有谁能给我一个建议,说“把所有的页面都拿走”来解决我面临的问题吗?因为我不知道最后一页是什么时候?在
为了获得可能的页面,您可以执行以下操作(我的示例是Python3):
基本上,它所做的是获取第一页并获取记录数,假设每页有50条记录,get_pages()函数可以计算传递给start参数的页码并生成所有分页URL,您需要获取所有这些页,用每个蛋白质迭代表,然后转到details页面获取使用beauthulsoup或lxml和XPath所需的信息。我尝试使用asyncio同时获取所有这些页面,但服务器超时:)。希望我的功能有帮助!在
相关问题 更多 >
编程相关推荐