爬虫示例程序

import requests
from bs4 import BeautifulSoup
try:
    import xml.etree.cElementTree as ET
except ImportError:
    import xml.etree.ElementTree as ET

base_url = 'http://history.xikao.com'
response = requests.get(base_url + '/people')
soup = BeautifulSoup(response.text'html.parser')

a_family_array = soup.find('div'id='article').ul.findAll('a')
#存放每个演员名字和网址的dict
name_url = dict()
#演员总数
peopleNum = 0
dis_num = 0
#遍历所有姓氏
for a_family in a_family_array:
    response = requests.get(base_url + a_family['href'])
    soup = BeautifulSoup(response.text'html.parser')

    #得到所有演员的a标签
    a_name_array = soup.find('div'id='article').findAll('a')

    #遍历所有演员
    for a_name in a_name_array:
        name_url[a_name['title']] = base_url + a_name['href']
        peopleNum += 1
        print(a_name['title']base_url + a_name['href'])

xml_name_root = ET.Element('people')
xml_people_root = ET.Element('people')

count = 0

for name in name_url:
    person_abs_url = name_url[name]
    # 将所有演员姓名保存到xml中
    xml_name = ET.SubElement(xml_name_root'name')
    xml_name.text = name

    if count <= 1000:
        # 将演员姓名,url,介绍放在xml中
        response = requests.get(person_abs_url)
        soup = BeautifulSoup(response.text'html.parser')
        xml_person = ET.SubElement(xml_people_root'person')
        xml_name = ET.SubElement(xml_person'name')
        xml_name.text = name
        xml_url = ET.SubElement(xml_person'url')
        xml_url.text = person_abs_url
        xml_dis = ET.SubElement(xml_person'dis')

        # 去掉网页中“活动年表”以后的文字
        import re
        try:
            all_text = soup.find('div'id='article').table.text.strip()
            useful_text = re.compile('活动年表.*').sub(''all_text)
            xml_dis.text = useful_text
            count += 1
            print('抓取了第'count'个演员'name'的信息')
        except:
          pass

tree_name = ET.ElementTree(xml_name_root)
f = open('E:/name.xml''wb')
tree_name.write(f)
f.close()

tree_people = ET.ElementTree(xml_people_root)
f = open('E:/discription.xml''wb')
tree_people.write(f)
f.close()
阅读更多
版权声明:转载请注明出处 https://blog.csdn.net/qiaojialin/article/details/53994175
个人分类: 爬虫
上一篇jersey使用方法
下一篇git常见问题
想对作者说点什么? 我来说一句

java爬虫 获得源码程序

2010年12月26日 2KB 下载

好用的爬虫好用的爬虫

2011年03月25日 132KB 下载

java爬虫漫爬,微博爬虫

2018年05月21日 576.14MB 下载

ZhiHu-master.zip

2017年09月07日 697KB 下载

爬虫依赖包

2018年02月06日 12.36MB 下载

scrapy-1.4.pdf

2017年11月22日 1.15MB 下载

基于VC的爬虫(网络蜘蛛)源码

2009年02月24日 1.52MB 下载

python新浪微博爬虫

2018年01月24日 111KB 下载

没有更多推荐了,返回首页

关闭
关闭