1

我尝试使用正则表达式从https://www.healthcaresource.com/lourdesnet/index.cfm?cJobId=404873&fuseaction=search.jobDetails&template=dsp_job_details.cfm获取数据

和href给了我

javascript:openit('?fuseaction=apply.login&template=dsp_apply_login.cfm&cJobId=404873');toggleElement('applyLinks_1'); toggleElement('externalApplyConfirm_1');

我只想得到

?fuseaction=apply.login&template=dsp_apply_login.cfm&cJobId=404873

我的代码是

link = infoer.select('@onclick').extract()[0]
item ["info"] = re.search("\'(\?[^\s]+)\&(cJobId\=\d+\')", link)

但它会导致 _sre.SRE_Match 对象位于 0x044f6ee0

4

1 回答 1

1

你需要使用group()方法。此外,'(.*?)'表达式看起来更合适:

item ["info"] = re.search("'(.*?)'", link).group(1)
于 2013-09-04T05:52:12.630 回答