今日代码(20201003)–简单爬虫-简单爬虫代码

451次阅读
没有评论
今日代码(20201003)--简单爬虫-简单爬虫代码

代码笔记,仅供参考



利用python爬取安徽省高校名单



因为工作需要,所以我爬取了安徽省高校的名单,并将其保存在csv文件中:

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

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

import requests
from lxml import etree
from fake_useragent import UserAgent
import time
import csv


class SchoolSpider:
def __init__(self):
self.url = ‘http://www.gx211.com/gxmd/gx-ah.html’

def get_ua(self):
return UserAgent().random

def get_page(self):
headers = {‘User-Agent’:‘Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0)’}
res = requests.get(self.url, headers = headers)
html = res.content.decode(‘utf-8’)

print(‘url:’, res.url)
print(‘code:’, res.status_code)
#print(html)
self.get_school_list(html)


def get_school_list(self, html):
html_parse = etree.HTML(html)
xpath = ‘//table//td[@class=”td1″]/a/text()’
s_list = html_parse.xpath(xpath)
#print(s_list)

self.write_ip(s_list)


def write_ip(self, school_list):

with open(‘./output/my_school_name.csv’, ‘w’, newline = , encoding = ‘utf-8’) as f:
writer = csv.writer(f)
writer.writerow([‘school’])
for item in school_list:
writer.writerow([item])


def main(self):
self.get_page()

if __name__ == ‘__main__’:
start = time.time()
spider = SchoolSpider()
spider.main()
end = time.time()
print(‘执行时间:%.2f’ % (endstart))



部分结果:

school
安徽大学
中国技术大学
合肥工业大学
安徽工业大学
安徽理工大学
安徽工程大学
安徽农业大学
安徽医科大学
蚌埠医学院
皖南医学院
安徽中医药大学
安徽师范大学
阜阳师范大学
安庆师范大学


神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:Python教程2022-11-01发表,共计1164字。
新手QQ群:570568346,欢迎进群讨论 Python51学习