import urllib2,reurl = '贴不了链接,请看图片'html = urllib2.urlopen(url).read()regex = re.compile(r'g_page_config = (.*?)g_srp_loadCss',re.DOTALL).findall(html)print regex这段代码采集不到内容,帮忙看下问题出在哪里
1 回答
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
淘宝的结果都在js里面异步加载,直接urlopen是得不到结果的,所以无法正则匹配内容,你可以把urlopen得到的html结果打印出来看看就知道了。
目前对于这种js异步加载的抓取,一般都会先用浏览器模拟加载完后再抓取,具体方法我也还没开始研究。
追问
可以抓取到的,淘宝的结果就是一个json,这里的正则就是匹配json的,我的匹配不出来,我的正则太弱 <?php $file = file_Get_contents($url); preg_match("/g_page_config = (.*?)g_srp_loadCss/iUs",$file,$match); print_r($match[1]); ?> php完全可以匹配出来,然后解析json就行
追答
我的错,试了下你图片中的代码,可以抓取到结果啊
添加回答
举报
0/150
提交
取消