注: 最近有一小任务,需要收集水质和水雨信息,找了两个网站:国家地表水水质自动监测实时数据发布系统和全国水雨情网.由于这两个网站的数据都是动态加载出来的,所以我用了Selenium来完成我的数据获取.数据的获取过程跟人手动获取过程类似,所以也不会对服务器造成更大负荷.这是我写的第1个爬虫,初次接触,还请各位多多指教.本文的代码见Selenium获取动态页面数据1.ipynb或Selenium获取动态页面数据1.py. 1.准备环境 工欲善其事,必先装好环境,耐心地把下面的环境装好. 建议安装Py…
注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所以也不会对服务器造成更大负荷.本文的代码见Selenium获取动态页面数据2.ipynb或Selenium获取动态页面数据2.py.同样在开始前需要准备环境,具体环境准备参考上一篇. 1.数据获取目标 全国水雨情网的数据同样是动态加载出来的,在浏览中打开网页后http://xxfb.hydroinfo.gov…
书接上文,前文最后提到将爬取的电影信息写入数据库,以方便查看,今天就具体实现. 首先还是上代码: # -*- coding:utf-8 -*- import requests import re import mysql.connector #changepage用来产生不同页数的链接 def changepage(url,total_page): page_group = ['https://www.dygod.net/html/gndy/jddy/index.html'] for i in…
前言:因为自己还是python世界的一名小学生,还有很多路要走,所以本文以目的为向导,达到目的即可,对于那些我自己都没弄懂的原理,不做去做过多解释,以免误人子弟,大家可以网上搜索. 友情提示:本代码用到的网址仅供交流学习使用,如有不妥,请联系删除. 背景:自己有台电脑要给老爸用,老爷子喜欢看一些大片,但是家里网络环境不好,就想批量下载一些存到电脑里.但是目前大部分的网站都是这样的, 需要一个个地点进去,才能看到下载地址 如果我要下载100部电影,那肯定手都要点断了,于是便想把这些地址给爬取出来,…
整个爬虫是基于selenium和Python来运行的,运行需要的包 mysql,matplotlib,selenium 需要安装selenium火狐浏览器驱动,百度的搜寻. 整个爬虫是模块化组织的,不同功能的函数和类放在不同文件中,最后将需要配置的常量放在constant.py中 项目地址:github(点击直达) 整个爬虫的主线程是Main.py文件,在设置好constant.py后就可以直接运行Main.py 从主线分析 Main.py # /bin/python # author:leoz…
有些时候我们需要用到百度文库的某些文章时,却发现需要会员才能下载,很难受,其实我们可以通过爬虫的方式来获取到我们所需要的文本. 工具:python3.7+selenium+任意一款编辑器 前期准备:可以正常使用的浏览器,这里推荐chrome,一个与浏览器同版本的驱动,这里提供一个下载驱动的链接https://chromedriver.storage.googleapis.com/77.0.3865.40/chromedriver_win32.zip 首先我们来看一下百度文库中这一篇文章https…
from bs4 import BeautifulSoup import requests import os def getdepotdetailcontent(title,url):#爬取每个仓库列表的详情 r=requests.get("https://www.50yc.com"+url).content soup = BeautifulSoup(r,"html.parser") result = soup.find(name='div',attrs={&qu…
# 爬取网络图片import requestsfrom lxml import etreefrom urllib import requestfrom queue import Queue # 导入队列import threadingimport osimport reclass Producer(threading.Thread): headers = { 'User-Agent': "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/5…
# -*- coding:utf-8 -*- # author : yesehngbao # time:2018/3/29 import re import pymongo from lxml import etree from selenium import webdriver from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import We…
from selenium import webdriver import time # 打开浏览器 dr = webdriver.Chrome() # 打开某个网址 dr.get('https://user.qzone.qq.com/2330331400/main') # 切换框架 dr.switch_to_frame('login_frame') time.sleep(1) dr.find_element_by_link_text('帐号密码登录').click() # 输入账号 dr.fi…