mac 上python简易爬虫

时间:2022-01-06 20:39:13

代码主要copy叶孤城大大。

http://www.imooc.com/wenda/detail/248578

1.三方库

安装 BeautifulSoup 很简单,下载 BeautifulSoup  源码。解压运行

python setup.py install 即可。(ps 若出现权限问题错误 sudo python setup.py install 

2. BeautifulSoup版本(4.0+以上from bs4 import BeautifulSoup)  python采用mac内置版本2.7

BeautifulSoup版本 低于4.0 采用 from BeautifulSoup import BeautifulSoup(html解析)


#!/usr/bin/python

#-*- coding: utf-8 -*-

#encoding=utf-8

import urllib2

import urllib

import os

from bs4 import BeautifulSoup

#导入库,Python代码与swift很相似,学过的同学比较快捷

#def 定义一个函数,ps python定义变量不需要使用js或swift的var

def getAllImageLink():

i=1;

#while循环

while(i<10):

#http://www.dbmeizi.com/category/11?p=0 小清新,可打开,该句获取html

html = urllib2.urlopen('http://www.dbmeizi.com/category/11?p=%s'%(i-1)).read()

i=i+1;

#html = urllib2.urlopen('http://www.dbmeizi.com').read()

soup = BeautifulSoup(html)

#find li标签下class=span3

liResult = soup.findAll('li',attrs={"class":"span3"})



for li in liResult:

imageEntityArray = li.findAll('img')

#find img标签

for image in imageEntityArray:

link = image.get('data-src')

imageName = image.get('data-id')

#下载路径,每个人路径不一样,建议修改,本人放在桌面上

filesavepath ='/Users/nothinglhw/Desktop/Mypic/%s.jpg' % imageName

#下载图片

urllib.urlretrieve(link,filesavepath)

print filesavepath

if __name__ == '__main__':

getAllImageLink()




#ps:

在cmd 中直接运行.py文件,则__name__的值是'__main__';

而在import 一个.py文件后,__name__的值就不是'__main__'了;

从而用if __name__ == '__main__'来判断是否是在直接运行该.py文件