乡亲们,试图从格式不正确的页面中获取一些变量。
html = response.read()
soup = BeautifulSoup(html)
links = soup.findAll('a')
for link in links:
for x in link.attrs:
print x
输出:
(u'href', u"javascript:Set_Variables('FIRSTNAME,LASTNAME', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'123456789123', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'FOOOOOOO',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'54',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'2014',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BAZZZZ',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BARRRRRRRRRR',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'07/31/2015',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'')")
(u'onmouseover', u"javascript: return window.status=''")
(u'href', u"javascript:Set_Variables('FIRSTNAME,LASTNAME', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'123456789123', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'FOOOOOOO',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'54',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'2014',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BAZZZZ',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BARRRRRRRRRR',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'07/31/2015',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'')")
(u'onmouseover', u"javascript: return window.status=''")
问:如何将我抓住FIRSTNAME,LASTNAME
,FOOOOOOO
,BARRRRR
,BAZZZZZ
,123456789123
所有这个烂摊子?
谢谢!
首先,您只需要关注href
此处的属性。
将所有内容放在括号之间,在空格处分割并删除逗号和引号:
args = link['href'].partition('(')[-1].rpartition(')')[0]
args = [v.rstrip(',').strip("'") for v in args.split()]
演示:
>>> href = u"javascript:Set_Variables('FIRSTNAME,LASTNAME', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'123456789123', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'FOOOOOOO',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'54',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'2014',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BAZZZZ',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BARRRRRRRRRR',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'07/31/2015',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'')"
>>> href.partition('(')[-1].rpartition(')')[0]
u"'FIRSTNAME,LASTNAME', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'123456789123', \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'FOOOOOOO',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'54',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'2014',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BAZZZZ',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'BARRRRRRRRRR',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'07/31/2015',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t''"
>>> [v.rstrip(',').strip("'") for v in href.partition('(')[-1].rpartition(')')[0].split()]
[u'FIRSTNAME,LASTNAME', u'123456789123', u'FOOOOOOO', u'54', u'2014', u'BAZZZZ', u'BARRRRRRRRRR', u'07/31/2015', u'']
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句