訂閱
糾錯
加入自媒體

如何用Python爬取上道網(wǎng)的贊助公司名稱?

一、前言

上道網(wǎng)是一個手游發(fā)行推薦與投融資交易平臺。平臺聚集手游CP、手游發(fā)行、手游渠道、手游外包,投資商以及IP授權商,IP合作、一站式服務。并為之提供合作交易機會。

今天教如何去爬取上道網(wǎng)的贊助公司名稱,方便有關人士投資。

二、實現(xiàn)目標

獲取對應的公司名稱,保存文檔。

三、項目準備

軟件:PyCharm

需要的庫:requests,fake_useragent,time

網(wǎng)址:http://www.daogame.cn/qudao-p-2.html?s=/qudao-p-{}.html

四、項目分析  如何網(wǎng)頁訪問?

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

http://www.daogame.cn/qudao-p-2.html?s=/qudao-p-2.html

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

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

點擊下一頁時,每增加一頁p-{}.html自增加1,用{}代替變換的變量,再用for循環(huán)遍歷這網(wǎng)址,實現(xiàn)多個網(wǎng)址請求。

五、項目實現(xiàn)

1. 定義一個class類繼承object,定義init方法繼承self,主函數(shù)main繼承self。導入需要的庫、請求地址。import requestsfrom lxml import etreefrom fake_useragent import UserAgentimport time
class Shangdao(object):    def __init__(self):        self.url = "http://www.daogame.cn/qudao-p-2.html?s=/qudao-p-{}.html"  #網(wǎng)站    def main(self):        pass
if __name__ == '__main__':    Siper = Shangdao()    Siper.main()2. 隨機產(chǎn)生UserAgent,防止反爬。for i in range(1, 50):            self.headers = {                'User-Agent': ua.random,            }3. 發(fā)送請求  獲取響應, 頁面回調(diào),方便下次請求。
  def get_page(self, url):        res = requests.get(url=url, headers=self.headers)        html = res.content.decode("utf-8")        return html4. 獲取公司名稱,for遍歷。
  def page_page(self, html):        parse_html = etree.HTML(html)        one = parse_html.xpath('//h2/a/text()')        for i in one:            print(i)5. 寫入文檔。
          f = open('公司.doc', 'a', encoding='utf-8')  # 以'w'方式打開文件            f.write(str(i))6. 調(diào)用方法,實現(xiàn)功能。
  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)項目優(yōu)化:

1. 設置時間延時。time.sleep(1.4)

六、效果展示

點擊綠色小三角運行輸入起始頁,終止頁(  從0頁開始 )。

渠道公司名,結果顯示控制臺。


保存文檔。

七、總結

1. 不建議抓取太多數(shù)據(jù),容易對服務器造成負載,淺嘗輒止即可。2. 希望通過這個項目,能夠幫助了解xpath解析頁面的基本流程,字符串是如何拼接,format函數(shù)如何運用。3. 本文基于Python網(wǎng)絡爬蟲,利用爬蟲庫,實現(xiàn)爬取上道網(wǎng),但是到自己動手實現(xiàn)的時候,總會有各種各樣的問題,切勿眼高手低,勤動手,才可以理解的更加深刻。

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯
    x
    *文字標題:
    *糾錯內(nèi)容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號