关于无界面浏览器、request模块、tesseract模块的部分笔记

1、Headless Chrome
谷歌无界面版本
    from selenium.webdriver.chrome.options import Options
    chrome_options = Options()
    chrome_options.add_argument('--headless')
    chrome_options.add_argument('--disable-gpu')
火狐无界面:
   #无头模式
    options = webdriver.FirefoxOptions()
    options.add_argument('-headless')

    profile = webdriver.FirefoxProfile()
    一些用得到的配置:
    1.permissions.default.image = 2

    0:加载所有图片

    1:Load images from same (originating) server only(就这个意思)

    2:不加载图片

    2.javascript.enabled = true

    js解析功能

    2.network.prefetch-nextfalse = false

    预加载功能,载入一个网页后,会预加载你可能会打开的网页链接内容。

    3.network.dns.disableIPv6 = true

    禁用IPv6,IPv4是主流,IPv6数量很少,很少会去解析,关闭它可以提高速度。

2、requests
安装:pip install requests
用来做什么:和urllib是同一个位置的 模拟浏览器发送请求
get请求    requests.get(url)
           响应对象:
            r.text         字符串形式查看响应
            r.content       字节类型查看响应
            r.encoding      查看或者设置编码类型
            r.status_code   查看状态码
            r.headers       查看响应头部
post请求
    必应翻译:r.json()        查看json数据
AJAX、get、post      和上面一样

定制头部
代理
cookie

对于有cookie验证的网站
   应该先生成一个Session对象  后面使用这个对象去访问
   s = requests.Session()
   r=s.get(url,headers=headers,data=form_data)
   r.content  r.text

3、图片验证码
 古诗文网

4、tesseract简介  是一个机器识别验证码的模块  但是功能较弱  可以机器学习

代码识别: pytesseract模块
pip install pytesseract
pip install pillow
#转化为灰度图片
img = img.convert('L')
img.show()
#二值化处理
threshold = 140
table = []
for i in range(256):
    if i < threshold:
        table.append(0)
    else:
        table.append(1)
out = img.point(table,'1')
out.show()

猜你喜欢

转载自www.cnblogs.com/Qiuzhiyu/p/12183150.html
今日推荐