登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 852|回复: 0

[Python教程] 【Python】实现搜索引擎

[复制链接]

444

主题

509

帖子

2051

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2051

荣誉管理论坛元老

发表于 2021-6-30 22:30:43 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. #!/usr/bin/python( H; q/ J* Q4 c+ l
  2. # -*- coding: utf-8 -*-3 @/ N) y' K+ z( r) u
  3. import requests
    - _  a: n) q) t* m2 U, \+ [5 a
  4. import re
    5 D# \5 @1 L9 D5 @8 ~5 n

  5. # Z! p2 f. f, K( M2 x
  6. headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
    ) ]' U* Z( c- A  t: N- E% m2 x" d/ e
  7.                          'Chrome/81.0.4044.138 '( K% O. V" H/ c" D0 j/ X; E9 _
  8.                          'Safari/537.36'}
    & k, K1 M3 Q5 B4 _3 n, Q2 _6 z1 U

  9. / ^7 ?2 d/ W3 {' B& d
  10. while 1:
    . q3 t* o! S- L2 |8 F
  11.     search = input("您想搜索什么:")
    8 t1 w& `8 K$ t/ h$ A  _
  12.     if search == "":6 K2 m6 b+ }  h0 e
  13.         break/ R4 i$ Q& y5 J. t) F
  14.     else:  y8 J9 x( ~* Q9 G2 D7 D! I$ W2 Q& u' k
  15.         url = f"https://baike.baidu.com/search/word?word={search}"
    : v& F% j  y  m! I9 o
  16.         req = requests.get(url, headers=headers)3 x! F* D9 v7 D6 ?/ G/ N( Y- ~7 z
  17.         req.encoding = 'utf-8'
    1 d4 u4 [  {- E/ y
  18.         res = re.search(r'<meta name="description" content="(.*?)\.\.\.">', req.text, re.S)3 s  X+ Y0 @; q6 Q
  19.         if res is None:
    6 u- w: W' m0 D) C' t
  20.             print("未能帮您找到:%s" % search); e+ _+ m4 U/ g, ~/ Y
  21.         else:
    . ~# l; o" T/ Z- |" P
  22.             print(res.group(1))1 ?& U2 ?( I/ L2 ^
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区 |网站地图

GMT+8, 2024-4-28 00:21 , Processed in 0.051617 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表