亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python實現提取百度搜索結果的方法

 更新時間:2015年05月19日 16:32:01   作者:MXi4oyu  
這篇文章主要介紹了python實現提取百度搜索結果的方法,涉及Python網頁及字符串操作的相關技巧,需要的朋友可以參考下

本文實例講述了python實現提取百度搜索結果的方法。分享給大家供大家參考。具體實現方法如下:

# coding=utf8
import urllib2
import string
import urllib
import re
import random
#設置多個user_agents,防止百度限制IP
user_agents = ['Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20130406 Firefox/23.0', \
    'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0', \
    'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533+ \
    (KHTML, like Gecko) Element Browser 5.0', \
    'IBM WebExplorer /v0.94', 'Galaxy/1.0 [en] (Mac OS X 10.5.6; U; en)', \
    'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)', \
    'Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14', \
    'Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) \
    Version/6.0 Mobile/10A5355d Safari/8536.25', \
    'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) \
    Chrome/28.0.1468.0 Safari/537.36', \
    'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; TheWorld)']
def baidu_search(keyword,pn):
  p= {'wd': keyword} 
  res=urllib2.urlopen(("http://www.baidu.com/s?"+urllib.urlencode(p)+"&pn={0}&cl=3&rn=100").format(pn))
  html=res.read()
  return html
def getList(regex,text):
  arr = []
  res = re.findall(regex, text)
  if res:
    for r in res:
      arr.append(r)
  return arr
def getMatch(regex,text):
  res = re.findall(regex, text)
  if res:
    return res[0]
  return ""
def clearTag(text):
  p = re.compile(u'<[^>]+>')
  retval = p.sub("",text)
  return retval
def geturl(keyword):
  for page in range(10):
    pn=page*100+1
    html = baidu_search(keyword,pn)
    content = unicode(html, 'utf-8','ignore')
    arrList = getList(u"<table.*?class=\"result\".*?>.*?<\/a>", content)
    for item in arrList:
      regex = u"<h3.*?class=\"t\".*?><a.*?href=\"(.*?)\".*?>(.*?)<\/a>"
      link = getMatch(regex,item)
      url = link[0]
      #獲取標題
      #title = clearTag(link[1]).encode('utf8')
      try:
        domain=urllib2.Request(url)
        r=random.randint(0,11)
        domain.add_header('User-agent', user_agents[r])
        domain.add_header('connection','keep-alive')
        response=urllib2.urlopen(domain)
        uri=response.geturl()
        print uri
      except:
        continue
if __name__=='__main__':
  geturl('python')

希望本文所述對大家的Python程序設計有所幫助。

相關文章

  • Python及PyCharm下載與安裝教程

    Python及PyCharm下載與安裝教程

    這篇文章主要為大家詳細介紹了Python及PyCharm下載與安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Python學習之列表和元組的使用詳解

    Python學習之列表和元組的使用詳解

    如果說在Python語言中找一個最優(yōu)秀的數據類型,那無疑是列表,如果要在推薦一個,那我選擇元組。本篇文章我們的重心會放在列表上,元組可以看成不能被修改的列表,感興趣的可以了解一下
    2022-10-10
  • Django REST framework 單元測試實例解析

    Django REST framework 單元測試實例解析

    這篇文章主要介紹了Django REST framework 單元測試實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • pyqt5蒙版遮罩mask,setmask的使用

    pyqt5蒙版遮罩mask,setmask的使用

    mask()和setmask()一般是在pyqt繪圖時常見,本文就來介紹一下pyqt5蒙版遮罩mask,setmask的使用,具有一定的參考價值,感興趣的可以了解一下
    2021-06-06
  • python mysqldb連接數據庫

    python mysqldb連接數據庫

    今天無事想弄下python做個gui開發(fā),最近發(fā)布的是python 3k,用到了數據庫,通過搜索發(fā)現有一個mysqldb這樣的控件,可以使用,就去官方看了下結果,沒有2.6以上的版本
    2009-03-03
  • Python openpyxl 無法保存文件的解決方案

    Python openpyxl 無法保存文件的解決方案

    這篇文章主要介紹了Python openpyxl 無法保存文件的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 使用Python操作MySql數據庫和MsSql數據庫

    使用Python操作MySql數據庫和MsSql數據庫

    這篇文章介紹了使用Python操作MySql數據庫和MsSql數據庫的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • python實現發(fā)送form-data數據的方法詳解

    python實現發(fā)送form-data數據的方法詳解

    這篇文章主要介紹了python實現發(fā)送form-data數據的方法,結合實例形式分析了Python發(fā)送form-data數據的相關操作步驟、實現方法與注意事項,需要的朋友可以參考下
    2019-09-09
  • Jupyter導入自定義模塊及導入后TypeError錯誤問題及解決

    Jupyter導入自定義模塊及導入后TypeError錯誤問題及解決

    這篇文章主要介紹了Jupyter導入自定義模塊及導入后TypeError錯誤問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Python實現生成bmp圖像的方法

    Python實現生成bmp圖像的方法

    本文主要介紹了Python實現生成bmp圖像的方法,對大家的學習具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-06-06

最新評論