千家信息网

Python怎么爬取上道网项目

发表于:2024-10-28 作者:千家信息网编辑
千家信息网最后更新 2024年10月28日,本篇内容主要讲解"Python怎么爬取上道网项目",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python怎么爬取上道网项目"吧!一、实现目标获取对应的公
千家信息网最后更新 2024年10月28日Python怎么爬取上道网项目

本篇内容主要讲解"Python怎么爬取上道网项目",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python怎么爬取上道网项目"吧!

一、实现目标

获取对应的公司名称,保存文档。

二、项目准备

软件:PyCharm

需要的库:requests,fake_useragent,time

三、项目分析

如何网页访问?

http://www.daogame.cn/qudao-p-2.html?s=/qudao-p-1.htmlhttp://www.daogame.cn/qudao-p-2.html?s=/qudao-p-2.htmlhttp://www.daogame.cn/qudao-p-2.html?s=/qudao-p-3.htmlhttp://www.daogame.cn/qudao-p-2.html?s=/qudao-p-4.html

点击下一页时,每增加一页p-{}.html自增加1,用{}代替变换的变量,再用for循环遍历这网址,实现多个网址请求。

四、项目实现

1. 定义一个class类继承object,定义init方法继承self,主函数main继承self。导入需要的库、请求地址。

import requestsfrom lxml import etreefrom fake_useragent import UserAgentimport timeclass Shangdao(object):    def __init__(self):        self.url = "http://www.daogame.cn/qudao-p-2.html?s=/qudao-p-{}.html"  #网站    def main(self):        passif __name__ == '__main__':    Siper = Shangdao()    Siper.main()

2. 随机产生UserAgent,防止反爬。

for i in range(1, 50):            self.headers = {                'User-Agent': ua.random,            }

3. 发送请求 获取响应, 页面回调,方便下次请求。

   def get_page(self, url):        res = requests.get(url=url, headers=self.headers)        html = res.content.decode("utf-8")        return html

4. 获取公司名称,for遍历。

   def page_page(self, html):        parse_html = etree.HTML(html)        one = parse_html.xpath('//h3/a/text()')        for i in one:            print(i)

5. 写入文档。

           f = open('公司.doc', 'a', encoding='utf-8')  # 以'w'方式打开文件            f.write(str(i))

6. 调用方法,实现功能。

   def main(self):        stat = int(input("输 入 开 始 (2开始):"))        end = int(input("输 入 结 束:"))        for page in range(stat, end + 1):            url = self.url.format(page)            print(url)            html = self.get_page(url)            self.page_page(html)            print("==================第%s页爬取成功!!!!=====================" % page)

项目优化:

设置时间延时。

time.sleep(1.4)

五、效果展示

点击绿色小三角运行输入起始页,终止页( 从0页开始 )。

渠道公司名,结果显示控制台。

保存文档。

到此,相信大家对"Python怎么爬取上道网项目"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0