2017-05-29 64 views
0

我需要检索只在一个网站的HREF第一级网页HREF的只有1级。例如:http://www.example.com/是,我需要打开网站和read.I打开页面,收集HREF的,我得到的所有环节如/公司/组织/公司/ globallocations,/公司/编辑部,/接触,/网站地图等等。收集在使用Python

下面是Python代码。

req = urllib2.Request(domain) 
response = urllib2.urlopen(req) 
soup1 = BeautifulSoup(response,'lxml') 
for link in soup1.find_all('a',href = True): 
    print link['href'] 

我期望的输出,

/公司/接触,/网站地图为网站www.example.com

请帮助和建议我一个解决方案。

回答

0

第一级概念不清楚,如果你相信一个/是第一级HREF链接,只是简单地计算在HREF文本多少/,并决定保留它或删除它。

如果我们考虑网页的角度来看,主页中的所有链接,应该认为是第一级。在这种情况下,您可能需要创建一个级别计数器来计算爬虫进入的级别/深度,并在特定级别停止。

希望有所帮助。

+0

谢谢@中黛。我的意思是第一层与一个**/**链接。同样可以收集吗?收集www.example.com/company而不是www.company.com/company/organization。 – NiviSRa

+0

正如我所说,如果你确定规则如此简单,只需删除最后一个**/something **。这很容易在Python中完成,甚至可以使用'os.path.dirname(url)'来获取没有**/something **的第一部分。 –