http://www.casmart.com.cn/product/supplierlist.aspx

图就懒得放了,有个人问我如何获取这个网址里的供应商列表,浏览器分析找不到ajax请求数据的接口。总之,直接登进这个网址,是看不到供应商的,刷新一遍就有了。

初步认为是后台搜索慢引起的,因为在手机浏览器可以显示。上了电脑后发现并不是这样。

花了半小时,发现原因是cookies里有个sessionId,然后写了个代码验证,成功。

代码如下:

# encoding: utf-8

import requests 
url1 = 'http://www.casmart.com.cn'
url = 'http://www.casmart.com.cn/product/supplierlist.aspx'
cookies = requests.get(url1).cookies 
print(cookies)
res = requests.get(url, cookies=cookies)
print(res.content.decode('utf-8'))
print('有限公司在不在返回里? -1不在, 其他数字在\n')
print(res.content.decode('utf-8').find('有限公司'))

输出大概有:

<RequestsCookieJar[<Cookie ASP.NET_SessionId=3k01knthzkrpsmpfybummv40 for .casmart.com.cn/>, <Cookie homehelptip=1 for .casmart.com.cn/>, <Cookie member_email= for .casmart.com.cn/>]>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>商家名录 - 喀斯玛商城 - 科研耗材采购平台-喀斯玛商城</title>
    <meta name="Keywords" content="生物试剂,化学试剂,试剂,试剂盒,实验耗材,试剂耗材,试剂采购,采购平台,办公用品采购,喀斯玛,科苑商城,喀斯玛商城,小型仪器,生化试剂,试剂平台,科研采购,科研审计" />
    <meta name="Description" content="科研耗
    ......
    ......
    ......
    ......
    ......
</body>
</html>


有限公司在不在返回里? -1不在, 其他数字在

34615