zoukankan      html  css  js  c++  java
  • 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(' ')

      

  • 相关阅读:
    podupdate时没有进度
    IOS开发
    ios事件传递
    ioshittest的用法
    Ios中时间无法响应
    OS开发(Objective-C)常用库索引
    IOS时间戳
    iOS- 详解文本属性Attributes
    IOSView显示特性设置
    Xcode的Architectures和Valid Architectures的区别,
  • 原文地址:https://www.cnblogs.com/kuku0223/p/8946014.html
Copyright © 2011-2022 走看看