最近在写一个小项目,需要爬点资源下来,经过一晚上的努力,终于把需要的资源爬出来了。
这次的爬虫应该是入门级爬虫,甚至算不上爬虫,它主要分为两大步,第一步是https的get请求,获得html,之后解析html,获得需要的数据。对应两大部分,我分别用了两个库,第一个是requests库,第二个是beautifulSoup库。
先上代码
importrequests
frombs4importBeautifulSoup
f=open('data','w')
fornuminrange(1,1000):
print(num)
//由于爬虫问题的法律合法性有待商榷,此处打码
url='https://***'+str(num)+'**'
r=requests.get(url)
html_doc=r.text
#-------------------------------------------------------------
soup=BeautifulSoup(html_doc,'html.parser')
idStr=''
tempData=matrix=[[foriinrange(10)]foriinrange(10)]
foriinrange(1,10):
tempStr=''
forjinrange(1,10):
idStr='r'+str(j)+'c'+str(i)
tempObj=str(soup.find(id=idStr))
tempObj=tempObj.split('value="')[1].split('"')[]
if(tempObj==""):
tempData[i-1][j-1]=
else:
tempData[i-1][j-1]=int(tempObj)
tempStr+=str(tempData[i-1][j-1])+" "
f.write(tempStr+'\n')
f.write('\n')
f.close()
分割线之上,主要是三句话,用于get请求获得内容。
url='https://***'+str(num)+'**'
r=requests.get(url)
html_doc=r.text
第一句是构建url,第二句是发送get请求,第三局是获得text(html),方便后续解析。
分割线之下,主要是找数据
soup=BeautifulSoup(html_doc,'html.parser')
idStr=''
tempData=matrix=[[foriinrange(10)]foriinrange(10)]
foriinrange(1,10):
tempStr=''
forjinrange(1,10):
idStr='r'+str(j)+'c'+str(i)
tempObj=str(soup.find(id=idStr))
tempObj=tempObj.split('value="')[1].split('"')[]
if(tempObj==""):
tempData[i-1][j-1]=
else:
tempData[i-1][j-1]=int(tempObj)
tempStr+=str(tempData[i-1][j-1])+" "
f.write(tempStr+'\n')
f.write('\n')
f.close()
“Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.”——BS文档(1)
soup是一个使用Python标准库来解析的beautifulsoup的实例对象,beautifulsoup可以根据结构去浏览数据,比如在我这里就是根据id值去识别数据,将id为 'r'+str(j)+'c'+str(i) 的tag提取出来,之后我将其转化为str,再通过字符串的简单处理获得我需要的数据,最后写入文件,保存文件。
最后,emmm,爬虫有风险,千万别越界。
《网络安全法》以及最新刑事司法解释:
未经授权爬取用户手机通讯录超过50条记录,老板进去最高可达3年;
未经授权抓取用户淘宝交易记录超过500条的,老板进去最高可达3年未经授权读取用户运营商网站通话记录超过500条以上的,老板进去最高可达7年;
未经授权读取用户公积金社保记录的超过50000条的,老板进去最高可达7年。
司法解释里面提到以下集中类型的数据,无论是“非法提供”和“非法获取”都可以入刑:
第一类:高度敏感信息,包括四种信息:行踪轨迹信息、通信内容、征信信息、财产信息。涉及高度敏感信息的违法活动,由于定罪门槛最低,因此严格限制在此四类,不做任何扩展;
第二类:敏感信息,即住宿信息、通信记录、健康生理信息、交易信息等其他可能影响人身、财产安全的公民个人信息。与第一类相比较,《解释》对第二类信息的界定仍留有空间,意味着在司法实践中,仍有可能会出现目前所列举之外的第二类信息类型;
第三类:其他个人信息。即上述第二、三类以外的个人信息。个人信息的类型是定罪量刑的重要依据。越敏感信息,达到定罪门槛的信息数量越少。
(1)BS4.4.0文档:
http://beautifulsoup.readthedocs.io/zh_CN/latest/
领取专属 10元无门槛券
私享最新 技术干货