本文整理汇总了Python中six.moves.urllib.request.Request.lstrip方法的典型用法代码示例。如果您正苦于以下问题:Python Request.lstrip方法的具体用法?Python Request.lstrip怎么用?Python Request.lstrip使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类six.moves.urllib.request.Request
的用法示例。
在下文中一共展示了Request.lstrip方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: AppRetrieveFiles
# 需要导入模块: from six.moves.urllib.request import Request [as 别名]
# 或者: from six.moves.urllib.request.Request import lstrip [as 别名]
#.........这里部分代码省略.........
t4_object_id,
file_name)
t4_url = '%s%s' % (self.src_url, t4_relative_url)
# if link exists on the t4 site, go get it
if self.link_exists(t4_relative_url, self.src_domain):
tfile.file.save(file_path,
ContentFile(
urlopen(t4_url).read()))
print(tfile.get_absolute_url(), 'file downloaded.')
else:
# t4_url not exist
self.add_broken_link(t4_url, **kwargs)
else:
# cannot retrieve the info from the mig table
self.add_broken_link('No entry in mig table', **kwargs)
def process_link(self, link, **kwargs):
# check if this is a broken link
# the link can from three different sources:
# this site:
# absolute url
# relative url
# the src site:
# absolute url
# the other sites:
# absolute url
# handle absolute url
cleaned_link = link.replace('&', '&')
o = urlparse(cleaned_link)
relative_url = quote(unquote(o.path))
hostname = o.hostname
# skip if link is external other than the src site.
if hostname and hostname not in (self.site_domain,
self.site_domain.lstrip('www.'),
self.src_domain,
self.src_domain.lstrip('www.')):
if not self.link_exists(relative_url, hostname):
print('-- External broken link: ', link)
self.add_broken_link(link, **kwargs)
return
# if link doesn't exist on the site but on the src
if not self.link_exists(relative_url, self.site_domain):
if self.link_exists(relative_url, self.src_domain):
url = '%s%s' % (self.src_url, relative_url)
# go get from the src site
tfile = self.save_file_from_url(url, kwargs.get('instance'))
self.replace_dict[link] = tfile.get_absolute_url()
else:
print('** Broken link - ', link, "doesn't exist on both sites.")
self.add_broken_link(link, **kwargs)
def link_exists(self, relative_link, domain):
"""
Check if this link exists for the given domain.
example of a relative_link:
/images/newsletter/young.gif
"""
conn = http_client.HTTPConnection(domain)
try:
conn.request('HEAD', relative_link)
res = conn.getresponse()
conn.close()
except socket.gaierror:
return False
return res.status in (200, 304)
def add_broken_link(self, broken_link, **kwargs):
"""
Append the broken link to the list.
"""
key = kwargs['content_url']
if key not in self.broken_links:
self.broken_links[key] = [broken_link]
else:
self.broken_links[key].append(broken_link)
def save_file_from_url(self, url, instance):
file_name = os.path.basename(unquote(url).replace(' ', '_'))
tfile = TFile()
tfile.name = file_name
tfile.content_type = ContentType.objects.get_for_model(instance)
tfile.object_id = instance.id
if hasattr(instance, 'creator'):
tfile.creator = instance.creator
if hasattr(instance, 'creator_username'):
tfile.creator_username = instance.creator_username
if hasattr(instance, 'owner'):
tfile.owner = instance.owner
if hasattr(instance, 'owner_username'):
tfile.owner_username = instance.owner_username
#file_path = file_directory(tfile, tfile.name)
tfile.file.save(file_name, ContentFile(urlopen(url).read()))
tfile.save()
return tfile