本文整理汇总了Python中html.parser.HTMLParser.close方法的典型用法代码示例。如果您正苦于以下问题:Python HTMLParser.close方法的具体用法?Python HTMLParser.close怎么用?Python HTMLParser.close使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类html.parser.HTMLParser
的用法示例。
在下文中一共展示了HTMLParser.close方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _strip_tags
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def _strip_tags(self, html):
result = []
parser = HTMLParser()
parser.handle_data = result.append
parser.feed(html)
parser.close()
return ''.join(result)
示例2: strip_tags
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def strip_tags(html):
if html:
html = html.strip()
html = html.strip("\n")
result = []
parse = HTMLParser()
parse.handle_data = result.append
parse.feed(html)
parse.close()
return "".join(result)
return ''
示例3: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self)
self.pbr()
self.o('', 0, 'end')
self.outtext = self.outtext.join(self.outtextlist)
if options.google_doc:
self.outtext = self.outtext.replace(' _place_holder;', ' ')
return self.outtext
示例4: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
"""
Tell the parser the feed has ended and clean up the rightmost
whitespaces.
"""
HTMLParser.close(self)
string = ''.join(self._string)
if string and HtmlExtractor.RSTRIP_REGEX.search(string):
# clean up those rightmost whitespaces:
self._string = [string.rstrip()]
self._shortenTags(self.position)
示例5: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self)
return self.__builder.close()
示例6: _check_valid_html
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def _check_valid_html(text):
p = HTMLParser()
p.feed(text)
p.close()
示例7: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self)
return self.liCheckTime
示例8: run_check
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def run_check(self, test):
#try:
p = HTMLParser()
p.feed(str(test.resultBody))
p.close()
return True
示例9: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
self._check_result(force=True)
if py3:
super().close()
else:
HTMLParser.close(self)
示例10: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self)
return self.tb.close()
示例11: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self)
for t in reversed(self._tags):
self._target.end(t)
return self._target.close()
示例12: close
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def close(self):
HTMLParser.close(self) # python 2
return self.data
示例13: submit
# 需要导入模块: from html.parser import HTMLParser [as 别名]
# 或者: from html.parser.HTMLParser import close [as 别名]
def submit(request):
ret = {}
has_html = False
if request.POST:
d = request.POST.dict()
name = d.get("name", None)
secret_key = d.get("secret_key", None)
if name and is_user_data_valid(name):
parser = HTMLParser()
parser.feed(name)
parser.close()
if parser.get_starttag_text():
ret["flag"] = FLAGS["scoreboard_hacking"][0]
has_html = True
if name and secret_key and not has_html:
if not is_user_data_valid(name, data_type=DataType.SHORT_NAME):
ret["error"] = "Too much data"
elif not is_user_data_valid(secret_key, data_type=DataType.PASSWORD):
ret["error"] = "Too much data"
elif get_leader(name.strip().lower()):
# If they also proved the correct secret key, update that entry in the database
secret_key = hashlib.sha512(secret_key.encode('utf-8')).hexdigest()
leader = get_leader(name.strip().lower(), secret_key)
if leader:
session = get_unauth_session(request)
if not session.lifetime_hacker_bucks:
ret["error"] = "What makes you think you belong on the leaderboard?"
else:
# Update the leader with the new info
# Create a set of claimed flags and combine the loaded leader with the current session
leader_claimed_flags = json.loads(leader.claimed_flags)
claimed_flags = list(set(leader_claimed_flags + session.claimed_flags))
leader.lifetime_hacker_bucks = calc_lifetime_hacker_bucks_from_claimed_flags(claimed_flags)
leader.num_flags_found = len(claimed_flags)
leader.claimed_flags = json.dumps(claimed_flags)
# This will overwrite their hacker bucks. Only an issue if they didn't load first
leader.hacker_bucks = session.hacker_bucks
leader.remote_ip = session.remote_ip
leader.percent_complete = int((leader.num_flags_found) / len(FLAGS) * 100)
leader.playtime = str(timezone.now() - leader.session_creation_time)
leader_purchased_challenges = json.loads(leader.purchased_challenges)
for challenge_id, challenge in session.challenges.items():
if challenge.purchased:
leader_purchased_challenges.append(challenge_id)
leader_purchased_challenges = list(set(leader_purchased_challenges))
leader.purchased_challenges = json.dumps(leader_purchased_challenges)
# Update the changes
leader.save()
else:
ret["error"] = "Already a leader with that name. To update, provide the correct password."
else:
name = name.strip()
session = get_unauth_session(request)
if not session.lifetime_hacker_bucks:
ret["error"] = "What makes you think you belong on the leaderboard?"
else:
leader = LeaderboardEntry()
leader.lifetime_hacker_bucks = session.lifetime_hacker_bucks
leader.num_flags_found = len(session.claimed_flags)
leader.claimed_flags = json.dumps(session.claimed_flags)
leader.hacker_bucks = session.hacker_bucks
leader.percent_complete = int((leader.num_flags_found / len(FLAGS)) * 100)
leader.name = name.lower()
leader.display_name = name
leader.remote_ip = session.remote_ip
leader.session_creation_time = session.creation_time
leader.secret_key = hashlib.sha512(secret_key.encode('utf-8')).hexdigest()
leader.playtime = str(timezone.now() - session.creation_time)
# Get the list of purchased challenge IDs
purchased_challenges = []
for challenge_id, challenge in session.challenges.items():
if challenge.purchased:
purchased_challenges.append(challenge_id)
leader.purchased_challenges = json.dumps(purchased_challenges)
leader.save()
elif not has_html:
ret["error"] = "No name/secret key provided for leaderboard entry"
return HttpResponse(json.dumps(ret))