您的位置:首页 > 编程语言 > Python开发

桌酷爬虫一点想法

2017-07-20 18:44 246 查看
一层地址 http://www.zhuoku.com/new/index.html http://www.zhuoku.com/new/index_2.html http://www.zhuoku.com/new/index_211.html 二层地址 http://www.zhuoku.com/zhuomianbizhi/star-starcn/20160703144045.htm http://www.zhuoku.com/zhuomianbizhi/star-starcn/20160704145756.htm http://www.zhuoku.com/zhuomianbizhi/design-hand/20160704205111.htm http://www.zhuoku.com/zhuomianbizhi/game-ctwall/20160704210520.htm
三层地址

部分代码
import requests
from bs4 import BeautifulSoup
a=0
def get_html_soup(url):
try:
r=requests.get(url)
r.raise_for_status()
r.encoding='GBK'
soup=BeautifulSoup(r.text)
return soup
except:
return ''
for i in range(1,212):
if i ==1:
url1='http://www.zhuoku.com/new/index.html'
else:
url1='http://www.zhuoku.com/new/index_'+str(i)+'.html'
#print(url1)
soup=get_html_soup(url1)
for i in soup.find_all('a',{'class':'title'}): #找到a标签里class为title的的标签并遍历标签
a=a+1
filename=i.get('title').replace(' ','').strip()#获取到title属性的值
url2= 'http://www.zhuoku.com'+i.get('href')#获取超链接
print(filename)

注意事项:
由于网页的编码问题不要用windows的cmd去执行要用python自带的IDLE执行
由于网页有反爬的机制,所以最好有Http代理,没有代理可以sleep几秒钟爬一个页面。
windows 一个文件夹下的文件数量不要太多,爬下来的东西要分一下类放在不同文件夹下。
重复的地址可以先爬下来存入数据库,利用数据库去处理,排除重复。
桌酷网站层次、地址分类实际应该是按照大陆明星、港台明星这样分。开头这样分地址层次,不是很好。
获取到最终图片地址可使用with() f: 这种方式保存在本地。

py代码量实在是少,这要是用c#早就200行以上了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  桌酷 爬虫 python3