python

时间:2016-08-31 05:39:33

标签: python python-2.7 web-scraping beautifulsoup

以下代码中del taglist[:]行的作用是什么?

import urllib
from bs4 import BeautifulSoup
taglist=list()
url=raw_input("Enter URL: ")
count=int(raw_input("Enter count:"))
position=int(raw_input("Enter position:"))
for i in range(count):
    print "Retrieving:",url
    html=urllib.urlopen(url).read()
    soup=BeautifulSoup(html)
    tags=soup('a')
    for tag in tags:
        taglist.append(tag)
    url = taglist[position-1].get('href', None)
    del taglist[:]
print "Retrieving:",url

问题是“编写一个扩展到http://www.pythonlearn.com/code/urllinks.py的Python程序。程序将使用urllib从下面的数据文件中读取HTML,从锚标记中提取href = vaues,扫描标记相对于列表中的第一个名称处于特定位置,请按照该链接重复该过程多次并报告您找到的姓氏“。 示例问题:从http://python-data.dr-chuck.net/known_by_Fikret.html开始 找到位置3的链接(名字是1)。请关注该链接。重复此过程4次。答案是您检索的姓氏。 姓名序列:Fikret Montgomery Mhairade Butchi Anayah 姓氏顺序:Anayah

1 个答案:

答案 0 :(得分:10)

[:]是数组中每个元素的数组切片语法。

这里的答案更深入地概括了一般用途:Explain Python's slice notation

del arr # Deletes the array itself
del arr[:]  # Deletes all the elements in the array
del arr[2]  # Deletes the second element in the array
del arr[1:]  # etc..