我试图获取URL列表,而不是语句末尾的True
中的False
响应。
#!/usr/bin/env python
import requests
from BeautifulSoup import BeautifulSoup
url ="https://www.geant.tn/"
response = requests.get(url)
# parse html
page = str(BeautifulSoup(response.content))
def getURL(page):
这部分没问题
"""
:param page: html of web page (here: Python home page)
:return: urls in that page
"""
start_link = page.find("a href")
if start_link == -1:
return None, 0
start_quote = page.find('"', start_link)
end_quote = page.find('"', start_quote + 1)
url = page[start_quote + 1: end_quote]
return url, end_quote
while True:
url, n = getURL(page)
page = page[n:]
我在这里遇到问题,因为我显示了True
或False
:
if url.endswith('.html'):
print url
else:
break
如果可以帮助我,非常感谢!
答案 0 :(得分:0)
如果您要获取该页面中所有以.html
结尾的URL,那么最简单的方法是使用BeautifulSoup中的find_all()
函数返回包含{ {1}}个属性。然后,您可以使用列表推导来构建列表,包括仅以a
结尾的列表。例如:
href
这将显示以以下开头的URL
.html