本文整理汇总了Python中urllib2.unquote函数的典型用法代码示例。如果您正苦于以下问题:Python unquote函数的具体用法?Python unquote怎么用?Python unquote使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了unquote函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: convert_utf8_url_to_ascii
def convert_utf8_url_to_ascii(url):
"""
taken from http://stackoverflow.com/questions/804336/best-way-to-convert-a-unicode-url-to-ascii-utf-8-percent-escaped-in-python
"""
# turn string into unicode
if not isinstance(url, unicode):
url = url.decode('utf8')
# parse it
parsed = urlparse.urlsplit(url)
# divide the netloc further
userpass, at, hostport = parsed.netloc.rpartition('@')
user, colon1, pass_ = userpass.partition(':')
host, colon2, port = hostport.partition(':')
# encode each component
scheme = parsed.scheme.encode('utf8')
user = urllib2.quote(user.encode('utf8'))
colon1 = colon1.encode('utf8')
pass_ = urllib2.quote(pass_.encode('utf8'))
at = at.encode('utf8')
host = host.encode('idna')
colon2 = colon2.encode('utf8')
port = port.encode('utf8')
# could be encoded slashes!
path = '/'.join(urllib2.quote(urllib2.unquote(pce).encode('utf8'), '')
for pce in parsed.path.split('/'))
query = urllib2.quote(urllib2.unquote(parsed.query).encode('utf8'), '=&?/')
fragment = urllib2.quote(urllib2.unquote(parsed.fragment).encode('utf8'))
# put it back together
netloc = ''.join((user, colon1, pass_, at, host, colon2, port))
return urlparse.urlunsplit((scheme, netloc, path, query, fragment))
开发者ID:sevas,项目名称:csxj-crawler,代码行数:34,代码来源:utils.py
示例2: set_language
def set_language(self):
"Set the language"
nextpage = request.params.get('next', None)
if not nextpage:
nextpage = request.headers.get('Referer', None)
if not nextpage:
nextpage = '/'
if '://' in nextpage:
from_url = urlparse(nextpage)
nextpage = from_url[2]
lang_code = request.params.get('language', None)
if lang_code and check_language(lang_code):
session['lang'] = lang_code
session.save()
params = []
for param in request.params:
if not param in ['language', 'amp']:
value = request.params[param]
if value:
if (param == 'came_from' and
'://' in urllib2.unquote(value)):
urlparts = urlparse(urllib2.unquote(value))
value = urlparts[2] or '/'
params.append('%s=%s' % (urllib2.quote(param),
urllib2.quote(value)))
if 'lc=1' not in params:
params.append('lc=1')
if params:
nextpage = "%s?%s" % (nextpage, '&'.join(params))
redirect(nextpage)
开发者ID:TetraAsh,项目名称:baruwa2,代码行数:30,代码来源:accounts.py
示例3: resolve_url
def resolve_url(self, url, connection, arguments={}):
handler = None
args = []
kwargs = {}
# unable to check host at the moment, so just loop over all handlers
for pattern, handlers in self.application.handlers:
for spec in handlers:
if issubclass(spec.handler_class, AiryHandler):
match = spec.regex.match(url)
if match:
if spec.regex.groups:
# None-safe wrapper around url_unescape to handle
# unmatched optional groups correctly
def unquote(s):
if s is None:
return s
return escape.url_unescape(s, encoding=None)
# Pass matched groups to the handler. Since
# match.groups() includes both named and unnamed groups,
# we want to use either groups or groupdict but not both.
# Note that args are passed as bytes so the handler can
# decide what encoding to use.
if spec.regex.groupindex:
kwargs = dict((k, unquote(v)) for (k, v) in match.groupdict().iteritems())
else:
args = [unquote(s) for s in match.groups()]
handler = spec.handler_class(self, connection, arguments, **spec.kwargs)
break
return handler, args, kwargs
开发者ID:sebastibe,项目名称:airy,代码行数:33,代码来源:web.py
示例4: main
def main():
if len(sys.argv) == 1:
dom = parseString(urlopen(XML_URL, data=POST_BODY).read())
elif len(sys.argv) == 2:
filename = sys.argv[1]
if not os.path.exists(filename):
print "File not found"
return 1
dom = parse(filename)
else:
print "Invalid arguments."
return 1
data = unquote(dom.getElementsByTagName("data").pop().lastChild.toxml()).split(':')[1].split(',')
for i in range(0, len(data), len(FIELDS)):
t_fields = data[i:i+len(FIELDS)]
d = dict(zip(FIELDS, t_fields))
d['url'] = unquote(d['url'])
d['flv_url'] = unquote(d['flv_url'])
d['rtmp_url'] = unquote(d['rtmp_url'])
print d['title'].replace('+', ' ')
print d['url']
print d['rtmp_url']
print
开发者ID:NightIncubus,项目名称:vino,代码行数:26,代码来源:extract_eduskunta_goodmoodtv.py
示例5: post
def post(self):
username = self.request.get('username')
lua_script = urllib2.unquote(base64.b64decode(
self.request.get('lua_script')))
lua_aggregator = urllib2.unquote(base64.b64decode(
self.request.get('lua_aggregator')))
_AddLuaTask(self.request, username, lua_script, lua_aggregator)
开发者ID:google,项目名称:skia-buildbot,代码行数:7,代码来源:skia_telemetry.py
示例6: grab
def grab(secondary_url):
global DEPTH
global LIMIT_DEPTH
if (secondary_url, DEPTH) in URLS:
return True
URLS.append((secondary_url, DEPTH))
filename = urllib2.unquote(secondary_url.split('/')[-1])
filename, isimg = fix_image(filename)
if exist(filename):
return True
if isimg:
get_wiki_image(secondary_url)
return True
if DEPTH > LIMIT_DEPTH:
return True
print '[%d]' % DEPTH, '--' * DEPTH, 'parsing...\t', urllib2.unquote(secondary_url)
DEPTH += 1
try:
first_page = urllib2.urlopen(URL_BASE + secondary_url)
except Exception, inst:
print URL_BASE + urllib2.unquote(secondary_url), 'no existe'
return False
开发者ID:guadalinex-archive,项目名称:guadalinex-v5,代码行数:30,代码来源:grab-a-pedia.py
示例7: http_get
def http_get(self, url):
MIME = '*/*'
unquoteurl = urllib2.unquote(url.encode('utf-8'))
scheme,netloc,url,params,query,fragment = urlparse(unquoteurl)
netloc=urllib2.quote(netloc)
url = urllib2.quote(url)
url = ParseResult( scheme,netloc,url,params,query,fragment ).geturl()
retries = 30
i = 0
while(True):
try:
if(self.useproxy):
print 'using proxy'
response = self.opener.open(url,timeout=5)
print("GET " + urllib2.unquote(response.geturl().encode()) + " " + str(response.code))
if('content-type' in response.headers):
MIME = response.headers['content-type'].split(';')[0]
print response
return response.read(), response.code, MIME
else:
response = requests.get(url)
print("GET " + urllib2.unquote(str(response.url)) + " " + str(response.status_code))
if('content-type' in response.headers):
MIME = response.headers['content-type'].split(';')[0]
return response.content, response.status_code, MIME
except:
if(i > retries):
print traceback.print_exc()
raise sys.exc_info()[0]
print "timeout 5000ms"
i += 1
开发者ID:loveyanbei,项目名称:CDT_Spider,代码行数:31,代码来源:PySpider.py
示例8: loadVideos
def loadVideos(url,name):
#try:
newlink=url
print newlink
xbmc.executebuiltin("XBMC.Notification(Please Wait!,Loading selected video)")
if (newlink.find("dailymotion") > -1):
match=re.compile('(dailymotion\.com\/(watch\?(.*&)?v=|(embed|v|user)\/))([^\?&"\'>]+)').findall(newlink)
lastmatch = match[0][len(match[0])-1]
link = 'http://www.dailymotion.com/'+str(lastmatch)
req = urllib2.Request(link)
req.add_header('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3')
response = urllib2.urlopen(req)
link=response.read()
response.close()
sequence=re.compile('"sequence", "(.+?)"').findall(link)
newseqeunce = urllib.unquote(sequence[0]).decode('utf8').replace('\\/','/')
#print 'in dailymontion:' + str(newseqeunce)
imgSrc=re.compile('"videoPreviewURL":"(.+?)"').findall(newseqeunce)
if(len(imgSrc[0]) == 0):
imgSrc=re.compile('/jpeg" href="(.+?)"').findall(link)
dm_low=re.compile('"sdURL":"(.+?)"').findall(newseqeunce)
dm_high=re.compile('"hqURL":"(.+?)"').findall(newseqeunce)
playVideo('dailymontion',urllib2.unquote(dm_low[0]).decode("utf8"))
elif (newlink.find("docs.google.com") > -1):
vidcontent = GetContent(newlink)
html = vidcontent.decode('utf8')
stream_map = re.compile('fmt_stream_map","(.+?)"').findall(html)[0].replace("\/", "/")
formatArray = stream_map.split(',')
for formatContent in formatArray:
formatContentInfo = formatContent.split('|')
qual = formatContentInfo[0]
url = (formatContentInfo[1]).decode('unicode-escape')
playVideo("direct",url)
elif (newlink.find("4shared") > -1):
d = xbmcgui.Dialog()
d.ok('Not Implemented','Sorry 4Shared links',' not implemented yet')
elif (newlink.find("vimeo") > -1):
idmatch =re.compile("http://player.vimeo.com/video/([^\?&\"\'>]+)").findall(newlink)
if(len(idmatch) > 0):
idmatch=idmatch[0].replace("'","")
else:
idmatch =re.compile("//vimeo.com/(.+?)dk").findall(newlink+"dk")
idmatch=idmatch[0].replace("'","")
playVideo('vimeo',idmatch)
else:
if (newlink.find("linksend.net") > -1):
d = xbmcgui.Dialog()
d.ok('Not Implemented','Sorry videos on linksend.net does not work','Site seem to not exist')
newlink1 = urllib2.unquote(newlink).decode("utf8")+'&dk;'
print 'NEW url = '+ newlink1
match=re.compile('(youtu\.be\/|youtube-nocookie\.com\/|youtube\.com\/(watch\?(.*&)?v=|(embed|v|user)\/))([^\?&"\'>]+)').findall(newlink1)
if(len(match) == 0):
match=re.compile('http://www.youtube.com/watch\?v=(.+?)&dk;').findall(newlink1)
if(len(match) > 0):
lastmatch = match[0][len(match[0])-1].replace('v/','')
#d = xbmcgui.Dialog()
#d.ok('mode 2',str(lastmatch),'launching yout')
playVideo('youtube',lastmatch)
else:
playVideo('moviekhmer',urllib2.unquote(newlink).decode("utf8"))
开发者ID:hewe,项目名称:dkodi,代码行数:60,代码来源:default.py
示例9: test_with_one_batch_open
def test_with_one_batch_open(self):
self.batch.open_for_location(self.location)
self.assertEquals(HouseholdMemberBatchCompletion.objects.count(), 0)
mock_filter = MagicMock()
mock_filter.exists.return_value = True
with patch.object(RandomHouseHoldSelection.objects, 'filter', return_value=mock_filter):
with patch.object(USSDSurvey, 'is_active', return_value=False):
self.reset_session()
self.choose_menu_to_take_survey()
self.select_household()
response = self.select_household_member()
response_string = "responseString=%s&action=request" % self.question_1.to_ussd()
self.assertEquals(urllib2.unquote(response.content), response_string)
response = self.respond("1")
response_string = "responseString=%s&action=request" % self.question_2.to_ussd()
self.assertEquals(urllib2.unquote(response.content), response_string)
response = self.respond("1")
response_string = "responseString=%s&action=request" % USSD.MESSAGES['HOUSEHOLD_COMPLETION_MESSAGE']
self.assertEquals(urllib2.unquote(response.content), response_string)
self.assertEquals(HouseholdMemberBatchCompletion.objects.count(), 1)
household_completed = HouseholdMemberBatchCompletion.objects.latest('id')
self.assertEquals(household_completed.household, self.household)
self.assertEquals(household_completed.investigator, self.investigator)
self.assertEquals(household_completed.batch, self.batch)
开发者ID:EswarSakamuri,项目名称:mymics,代码行数:29,代码来源:test_batches_operation_ussd.py
示例10: test_selection_for_survey_that_has_no_sampling
def test_selection_for_survey_that_has_no_sampling(self):
open_survey = Survey.objects.create(name="open survey", description="open survey", has_sampling=False)
with patch.object(Survey, "currently_open_survey", return_value=open_survey):
mobile_number = self.ussd_params['msisdn'].replace(COUNTRY_PHONE_CODE, '', 1)
self.assertEquals(RandomHouseHoldSelection.objects.count(), 0)
response_message = "responseString=%s&action=request" % HouseHoldSelection.MESSAGES['HOUSEHOLDS_COUNT_QUESTION']
response = self.client.get('/ussd', data=self.ussd_params)
self.failUnlessEqual(response.status_code, 200)
self.assertEquals(urllib2.unquote(response.content), response_message)
self.assertEquals(RandomHouseHoldSelection.objects.count(), 0)
self.ussd_params['response'] = "true"
self.ussd_params['ussdRequestString'] = " 100 "
response_message = "responseString=%s&action=end" % HouseHoldSelection.MESSAGES[
'HOUSEHOLD_CONFIRMATION_MESSAGE']
response = self.client.get('/ussd', data=self.ussd_params)
self.failUnlessEqual(response.status_code, 200)
self.assertEquals(urllib2.unquote(response.content), response_message)
self.assertEquals(RandomHouseHoldSelection.objects.count(), 1)
household_selection = RandomHouseHoldSelection.objects.all()[0]
self.assertEquals(household_selection.mobile_number, mobile_number)
self.assertEquals(household_selection.no_of_households, 100)
selected_households = household_selection.selected_households.split(',')
self.assertEquals(len(selected_households), 100)
message = BackendMessage.objects.filter(identity=self.ussd_params['msisdn'])
self.failIf(message)
开发者ID:EswarSakamuri,项目名称:mymics,代码行数:31,代码来源:test_random_selection_ussd.py
示例11: _get_video_link_dict
def _get_video_link_dict(url):
header = {'GData-Version' : '3.0' }
req = urllib2.Request(url, None, header)
try:
response = urllib2.urlopen(req)
except urllib2.URLError as e:
if hasattr(e, 'reason'):
raise RuntimeError(str(e.reason))
elif hasattr(e, 'code'):
raise RuntimeError(str(e.code))
else:
response_data = response.read()
re_stream_map = re.compile(r'"url_encoded_fmt_stream_map": "(.+?)"')
re_adaptive_fmts = re.compile(r'"adaptive_fmts": "(.+?)"')
re_url = re.compile(r'url=(.+?)(?:,|\\)')
re_itag = re.compile(r'itag=(\d+)')
stream_map = re.search(re_stream_map, response_data).group(1)
adaptive_fmts = re.search(re_adaptive_fmts, response_data).group(1)
video_info = stream_map + adaptive_fmts
urls = re.findall(re_url, video_info)
url_dict = {}
for u in urls:
u = urllib2.unquote(urllib2.unquote(u))
itag = re.search(re_itag, u).group(1)
url_dict[str(itag)] = u
return url_dict
开发者ID:ra1du1,项目名称:MetalKettles-Addon-Repository,代码行数:33,代码来源:youtube.py
示例12: test_selection
def test_selection(self):
with patch.object(Survey, "currently_open_survey", return_value=self.open_survey):
self.assertEquals(RandomHouseHoldSelection.objects.count(), 0)
response_message = "responseString=%s&action=request" % HouseHoldSelection.MESSAGES['HOUSEHOLDS_COUNT_QUESTION']
response = self.client.get('/ussd', data=self.ussd_params)
self.failUnlessEqual(response.status_code, 200)
self.assertEquals(urllib2.unquote(response.content), response_message)
self.assertEquals(RandomHouseHoldSelection.objects.count(), 0)
self.ussd_params['response'] = "true"
self.ussd_params['ussdRequestString'] = " 100 "
response_message = "responseString=%s&action=end" % HouseHoldSelection.MESSAGES[
'HOUSEHOLD_SELECTION_SMS_MESSAGE']
response = self.client.get('/ussd', data=self.ussd_params)
self.failUnlessEqual(response.status_code, 200)
self.assertEquals(urllib2.unquote(response.content), response_message)
self.assertEquals(RandomHouseHoldSelection.objects.count(), 1)
household_selection = RandomHouseHoldSelection.objects.all()[0]
mobile_number = self.ussd_params['msisdn'].replace(COUNTRY_PHONE_CODE, '', 1)
self.assertEquals(household_selection.mobile_number, mobile_number)
self.assertEquals(household_selection.no_of_households, 100)
selected_households = household_selection.selected_households.split(',')
self.assertEquals(len(selected_households), 10)
message = BackendMessage.objects.get(identity=self.ussd_params['msisdn'])
self.assertEquals(message.text, household_selection.text_message())
开发者ID:EswarSakamuri,项目名称:mymics,代码行数:29,代码来源:test_random_selection_ussd.py
示例13: changepassword
def changepassword(self, fields):
time.sleep(1)
d={urllib2.unquote(i.split('=')[0]):urllib2.unquote(i.split('=')[1]) for i in [tmp for tmp in fields.split('&')]}
oldpassword=d['oldpassword']
newpassword1=d['newpassword1']
newpassword2=d['newpassword2']
user=checkPassword()
if not user:
return """You have been logged out. <a href="/home/login">Log in</a>."""
if oldpassword=='' or newpassword1=='' or newpassword2=='':
return 'You need to fill in all the required password data'
if newpassword1!=newpassword2:
return "You entered your new password incorrectly. Please try again."
elif len(newpassword1)<=5:
return "<p>Your password needs to be greater than 5 characters</p>"
oldpass=hashlib.md5((oldpassword+salt).encode('utf-8')).hexdigest()
newpass=hashlib.md5((newpassword1+salt).encode('utf-8')).hexdigest()
## RESET COOKIE
cookie = cherrypy.response.cookie
sida=user
sidb=newpass
cookie['sida']=sida
cookie['sida']['expires'] = 12 * 30 * 24 * 60 * 60
cookie['sida']["path"] = "/"
cookie['sidb']=sidb
cookie['sidb']['expires'] = 12 * 30 * 24 * 60 * 60
cookie['sidb']["path"] = "/"
cherrypy.request.cookie=cookie
data=db.execute("""SELECT id FROM lab_members WHERE name=%s AND password=%s""", (user,oldpass), commit=False)
if len(data)==0:
return "Your password is incorrect."
db.execute('''UPDATE lab_members SET password=%s WHERE name=%s''', (newpass, user))
return 'Your password has been updated!'
开发者ID:kyleellefsen,项目名称:Glams,代码行数:34,代码来源:ajax.py
示例14: lambe
def lambe(orgao_a, estado_a, orgao_b, estado_b, raw=False):
orgao_a = unquote(orgao_a)
estado_a = unquote(estado_a)
orgao_b = unquote(orgao_b)
estado_b = unquote(estado_b)
l = {
"a": {"estado": estado_a, "orgao": orgao_a, "valor": lambes[orgao_a][estado_a]},
"b": {"estado": estado_b, "orgao": orgao_b, "valor": lambes[orgao_b][estado_b]},
}
if l["a"]["valor"] <= l["b"]["valor"]:
l["proporcao"] = "menos"
# hackish?
l["razao"] = round((l["b"]["valor"] - l["a"]["valor"]) / l["a"]["valor"], 1)
l["razao_g"] = round(l["b"]["valor"] / l["a"]["valor"], 1)
else:
l["proporcao"] = "mais"
l["razao"] = round(l["a"]["valor"] / l["b"]["valor"], 1)
image_path = unidecode("-".join([l["a"]["orgao"], l["a"]["estado"], l["b"]["orgao"], l["b"]["estado"]]))
if os.path.isfile(here + "/static/raw/" + image_path + "-hi.png"):
l["image"] = image_path
else:
if not raw:
t = threading.Thread(target=generate_image, args=(l, 3))
t.start()
return render_template("lambe.html", l=l)
开发者ID:pmarkun,项目名称:lambelambe,代码行数:28,代码来源:lambelambe.py
示例15: getImage
def getImage(url, h=None, w=None, o=100, auth=None, **kwargs):
# Create image directory if it doesnt exist
imgdir = os.path.join(htpc.datadir, 'images/')
if not os.path.exists(imgdir):
os.makedirs(imgdir)
fileName = unquote(unquote(url)).rsplit('/', 1).pop()
imgName, imgType = fileName.rsplit('.', 1)
original = resized = os.path.join(imgdir, imgType+'_'+imgName+'.png')
if h and w:
resized = os.path.join(imgdir, original+'_'+w+'_'+h+'.png')
# If there is no local copy of the original
if not os.path.isfile(original):
original = downloadImage(url, original, auth)
if not original:
print "Error downloading image"
raise cherrypy.NotFound(fileName)
# If there is no local resized copy
if not os.path.isfile(resized):
resized = resizeImage(original, h, w, o, resized)
if not resized:
resized = original
# Load file from disk
return serve_file(path=resized, content_type='image/png')
开发者ID:Influencer,项目名称:HTPC-Manager,代码行数:30,代码来源:proxy.py
示例16: _download
def _download(self, path, download_url):
self.path = path
d = curl()
filename, download_html = d._curl(self.path)
_number_pages = re.search('yui3-appsview-page-ellipsis">.*?</span>.*?<a title="第(.+?)页"', download_html, re.DOTALL)
try:
os.makedirs('./Tinkerbell/downloads/m163')
except OSError:
pass
os.chdir("./Tinkerbell/downloads/m163")
for i in range(1, int(_number_pages.group(1))+1):
self.download_url = download_url + str(i) + ".html"
filename, download_html = d._curl(self.download_url)
_log("Downloading from %s" % unquote(self.download_url))
found = re.findall('m-t5">.*?<a href="(.+?)"', download_html, re.DOTALL)
for _apk_link in found:
filename = os.path.basename(_apk_link)
filename = re.findall('%2Ffile.m.163.com%2Fapp%2Ffree%2F.*?%2F.*?%2F(.+?).apk', filename, re.DOTALL)
if len(filename)!=0:
_download_name = repr(unquote(filename[0])).replace('\'','')
_download_name = _download_name.replace('u\\','').replace('\\','')
_download_name = _download_name.split('/', 1)[-1] + ".apk"
d._download_apk(_apk_link,_download_name)
os.chdir('../../../')
开发者ID:anantshri,项目名称:Tinkerbell,代码行数:25,代码来源:m163.py
示例17: docs
def docs(docs=None, q=None):
response.content_type = 'application/json; charset=UTF8'
response.set_header('Expires', _cache_date())
try:
if request.query.q:
q = unquote(request.query.q)
except:
pass
try:
if request.query.id:
docs = [unquote(request.query.id)]
except:
pass
try:
response.set_header('Expires', 0)
response.set_header('Pragma', 'no-cache')
response.set_header('Cache-Control', 'no-cache, no-store, must-revalidate')
if request.query.random:
docs = [np.random.choice(lda_v.corpus.view_metadata(context_type)[doc_label_name(context_type)])]
except:
pass
js = get_docs(docs, query=q)
return json.dumps(js)
开发者ID:bobbysmiley,项目名称:topic-explorer,代码行数:28,代码来源:server.py
示例18: fixurl
def fixurl(url):
# turn string into unicode
if not isinstance(url,unicode):
url = url.decode('utf8')
# parse it
parsed = urlparse.urlsplit(url)
# divide the netloc further
userpass,at,hostport = parsed.netloc.rpartition('@')
user,colon1,pass_ = userpass.partition(':')
host,colon2,port = hostport.partition(':')
# encode each component
scheme = parsed.scheme.encode('utf8')
user = urllib2.quote(user.encode('utf8'))
colon1 = colon1.encode('utf8')
pass_ = urllib2.quote(pass_.encode('utf8'))
at = at.encode('utf8')
host = host.encode('idna')
colon2 = colon2.encode('utf8')
port = port.encode('utf8')
path = '/'.join( # could be encoded slashes!
urllib2.quote(urllib2.unquote(pce).encode('utf8'),'')
for pce in parsed.path.split('/')
)
query = urllib2.quote(urllib2.unquote(parsed.query).encode('utf8'),'=&?/')
fragment = urllib2.quote(urllib2.unquote(parsed.fragment).encode('utf8'))
# put it back together
netloc = ''.join((user,colon1,pass_,at,host,colon2,port))
return urlparse.urlunsplit((scheme,netloc,path,query,fragment))
开发者ID:brianckeegan,项目名称:Wikipedia,代码行数:32,代码来源:wikipedia_scraping.py
示例19: saveContent
def saveContent(self, isPage=False, content=None, targeturl='http://www.example.com/dir/example.txt'):
#example : we have a file http://example.com/dir/somefile.txt
#rooturl = http://example.com/
#url - rooturl = dir/somefile.txt
pos = u'./'
MIME = None
if(content is None):
try:
content,code,MIME = self.http_get(targeturl)
except:
print "FAIL over 30 times , giving up"
return "ERROR", targeturl
elif(isPage is True):
MIME = u'text/html'
try:
filename = self.get_filename(MIME, urllib2.unquote(targeturl.encode('utf-8')).decode('utf-8'))
except UnicodeEncodeError:
splits = filename
if(isPage):
pos = os.path.join(pos, filename)
self.filesdir = urllib2.unquote(filename.split('.')[0]) + u'_files'
if(not os.path.exists(os.path.join(self.tmpdir, self.filesdir))):
os.mkdir(os.path.join(self.tmpdir, self.filesdir))
else:
pos = os.path.join(os.path.join(pos, self.filesdir), filename)
try:
ofile = open(os.path.join(self.tmpdir, pos),'wb')
ofile.write(content)
ofile.close()
except IOError:
print "Unable to save " + targeturl
return content, pos
开发者ID:loveyanbei,项目名称:CDT_Spider,代码行数:32,代码来源:PySpider.py
示例20: success
def success(self):
print self.msg
self.process_map["FILE"] = "success.html"
sender = self.msg["email"]
receivers = ['[email protected]']
subject = "[loframe_code]" + self.msg["name"]
rawcode = self.msg["code"]
text = urllib2.unquote(rawcode)
text = urllib2.unquote(text)
message = """\From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (sender, ", ".join(receivers), subject, text)
txt_confirm = "This is the email confirming you have successfully submitted your code."
msg_rpy = """\From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (sender, ", ".join(receivers), subject, txt_confirm)
y_name = "[email protected]"
y_pwd = "09df64ea8f402b4e56efeacb5b5b09c3"
smtpserver = smtplib.SMTP("smtp.mailgun.org",587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo()
smtpserver.login(y_name, y_pwd)
smtpserver.sendmail("[email protected]", receivers[0], message)
smtpserver.sendmail("[email protected]", sender, msg_rpy)
smtpserver.close()
开发者ID:xiaohansong,项目名称:LoFrame,代码行数:26,代码来源:submit.py
注:本文中的urllib2.unquote函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论