• scrapy 简单爬虫实验


    利用python的模块requests来爬取百度搜索出来的url

    使用环境为python3

    #!/use/bin/env python
    # -*- coding:utf-8 -*-
    import requests
    import re
    key_word = '编程语言' #搜索关键字
    # 百度的一个简单搜索url
    url = 'https://www.baidu.com/s?&rsv_spt=1&rsv_iqid=0xde1c4732000302f0&issp=1&f=8&rsv_bp=0& 
    rsv_idx=2&ie=utf-8&tn=sitehao123_15&rsv_enter=1&rsv_sug3=12&rsv_sug1=12&rsv_sug7=100&
    sug=%25E7%25BC%2596%25E7%25A8%258B%25E5%2585%25A5%25E9%2597%25A8&rsv_n=1' # 设置客户端的浏览器型号 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
    Chrome/66.0.3359.117 Safari/537.36' } with open('%s.txt' % key_word, 'w') as f: # 打开一个文件写入 for i in range(3): data = { # 给出一个参数 用于给url传递参数 例如: http://www.baidu.com?wd=key_word&pn=10 'wd': key_word, 'pn': i*10 } response = requests.get(url, headers=headers, params=data) #使用requests模块传递3个参数 url,headers,params html = response.text # 下载好的 html代码
    # 使用正则表达式过滤出需要的url urls = re.findall(r'<div class="result c-container ".*?"(http://www.baidu.com/link?url=.*?)".*?</div>', html, re.S) real_urls = [] # 设置一个空数列 for u in urls: res = requests.get(u, headers=headers) #过滤出需要的url real_urls.append(res.url) #将结果放进空列表 for item in real_urls: #循环写入到文件 f.write(item) f.write(' ')

      

  • 相关阅读:
    第08组 Alpha冲刺(1/6)
    第08组 团队Git现场编程实战
    第08组 团队项目-需求分析报告
    团队项目-选题报告
    第二次结对编程作业
    第一次结对编程作业
    第8组 团队作业
    第一次个人编程作业
    第一次博客作业
    Alpha 冲刺 (7/10)
  • 原文地址:https://www.cnblogs.com/kuku0223/p/8946014.html
Copyright © 2020-2023  润新知