首页 > 编程语言 >Python基础(四)爬虫

Python基础(四)爬虫

时间:2023-04-05 21:34:54浏览次数:36  
标签:password Python 基础 爬虫 https print import save jc

python爬虫

系列文章 网上搜素的系列文章 记录一下后续可能会用https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI3NzI1MzY4Mw==&action=getalbum&album_id=1786298272630816773#wechat_redirect

1. requests请求 2. User-Agent伪装
from selenium import webdriver
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
    'Cookie':''
}
url='http://www.aaa.com/admin/'
response = webdriver.request('POST',url , data={"param1": "value1"}, headers=headers)
print(response)
3. re/xpath解析数据
import re
import requests
response = requests.get("https://fanyi.baidu.com/")
title = re.findall(r"<title>(.*?)</title>", response.text)[0]
content = re.findall(r"<p>(.*?)</p>", response.text)[0]
print("标题:", title)
print("正文:", content)
4. Selenium+Chrome/Firefox
from selenium import webdriver
browser = webdriver.Chrome("E:\\googleDriver\\chromedriver.exe")
browser.implicitly_wait(10)
browser.get("IP")
from selenium.webdriver.common.by import By
text = browser.find_elements(By.CLASS_NAME,"el-input__inner")
username = text[0]
password = text[1]
username.send_keys('username')
password.send_keys('password')
5. 多进程/多线程
6. Proxies代理
import requests
proxies = {
    "http": "http://user:password@proxy-ip:proxy-port", # HTTP协议代理
    "https": "http://user:password@proxy-ip:proxy-port", # HTTPS协议代理
}
response = requests.get("https://www.example.com", proxies=proxies)
7. ajax请求破解
import requests
url = 'https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date=2022-06-29&leftTicketDTO.from_station=HZH&leftTicketDTO.to_station=SHH&purpose_codes=ADULT'
headers = {
    "Accept": "*/*",
    "Accept-Encoding": "gzip, deflate, br",
    "Accept-Language": "zh-CN,zh;q=0.9",
    "Cache-Control": "no-cache",
    "Connection": "keep-alive",
    "Cookie": "_uab_collina=165606030144749982200458; JSESSIONID=E6E0AEED78C2D7C1F570B546D4EF1E54; highContrastMode=defaltMode; guidesStatus=off; cursorStatus=off; _jc_save_wfdc_flag=dc; RAIL_EXPIRATION=1656691421557; RAIL_DEVICEID=ri6nXn_Z4JvuTfJ_dKkesj62yt7o45BG6BTx7xmjwqzCkpc2n9XwDN03Jwe1zmbFvGtn3wq4kpkyCcfk8ffhwOZHh7Fj9QQZRXxt-3Wd54OC-InIOkYoe06yk8pAKK0LLBcbzOKj8MPwB51_xh8WDHQO09qjmooQ; BIGipServerpassport=770179338.50215.0000; route=6f50b51faa11b987e576cdb301e545c4; BIGipServerotn=1089470986.24610.0000; _jc_save_toStation=%u4E0A%u6D77%2CSHH; _jc_save_toDate=2022-06-29; BIGipServerpool_passport=182714890.50215.0000; _jc_save_fromDate=2022-06-29; _jc_save_fromStation=%u676D%u5DDE%2CHZH",
    "Host": "kyfw.12306.cn",
    "If-Modified-Since": "0",
    "Referer": "https://kyfw.12306.cn/otn/leftTicket/init?linktypeid=dc&fs=%E6%88%90%E9%83%BD,CDW&ts=%E4%B8%8A%E6%B5%B7,SHH&date=2022-06-29&flag=N,N,Y",
    "Sec-Fetch-Dest": "empty",
    "Sec-Fetch-Mode": "cors",
    "Sec-Fetch-Site": "same-origin",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36",
    "X-Requested-With": "XMLHttpRequest",
    "sec-ch-ua": '" Not A;Brand";v="99", "Chromium";v="100", "Google Chrome";v="100"',
    "sec-ch-ua-mobile": "?0",
    "sec-ch-ua-platform": '"Windows"'
}
res = requests.get(url=url,  headers=headers)
print(res.status_code)
print(res)
print(res.json())

标签:password,Python,基础,爬虫,https,print,import,save,jc
From: https://www.cnblogs.com/wuxiaolong4/p/17290972.html

相关文章

  • python 复制幻灯片并替换相应文字作为新的幻灯片_循环替换
    #encoding=utf8#-*-coding:utf-8-*-#pipinstallpython-pptx-ihttps://pypi.tuna.tsinghua.edu.cn/simple#pipinstallpython-docx-ihttps://pypi.tuna.tsinghua.edu.cn/simple#pipinstallpandas-ihttps://pypi.tuna.tsinghua.edu.cn/simplefrompptximp......
  • python 合并多个PPT
    #encoding=utf8#-*-coding:utf-8-*-#pipinstallaspose.slides-ihttps://pypi.tuna.tsinghua.edu.cn/simpleimportaspose.slidesasslidesfrompptximportPresentation#导入PPT库importwin32com.client,sysfromglobimportglob#打開第一張PPTwith......
  • CS50-Python实验3,4
    Week3ExceptionsFuelGauge题目描述:输入分数字符串,判断并输出相应的百分数;特例不足1%输出E,超出99%输出F思路:1,从字符串中取出x,y;2,按题中要求计算输出;题解:whileTrue:try:##取出x,yx,z,y=input("Fraction:")x,y=int(x),int(y)......
  • PHP基础知识之————PHP Web脚本中使用FFmpeg
    简介本文将尝试指出在PHPWeb脚本中使用FFmpeg时需要了解的所有重要事项。它还将显示一些使用示例,以使事情更清楚。这个想法也可以应用到其他web脚本语言。从PHP脚本调用命令行工具选择一个模型网页设计为快速执行,以便浏览您的网站的人不必等待太多的响应。因为如果他们无聊的等待,......
  • 理论基础知识之————KB Kb Kbps 相关单位的区别和换算
    换算公式 8bit(位)=1Byte(字节)1024Byte(字节)=1KB1024KB=1MB1024MB=1GB1024GB=1TB 容量是大写的 B而传输的速度是小写的 bbps 是bitspersecond的缩写,表示比特/秒。    Bps 是bitypersecond的缩写,表示字节/秒。    这个p又可以写成/, S是秒的缩写,所......
  • python打印各种图形
    fewf#打印各种图形#正方形n行n列#***#***#***defsquare1(n:int)->None:foriinrange(n):forjinrange(n):print('*',end='')print()#长方形n行n+2列#*****#*****#*****def......
  • JavaScript基础知识之——Location 对象详解
    属性描述location.hash设置或取得URL中的锚location.host设置或取得URL中主机(包括端口号)location.hostname设置或取得URL中的主机名location.href设置或取得完整URL(页面重定向应用)location.pathname设置或取得URL中的路径location.port设置或取得URL中的端口号location.......
  • Redis基础知识之—— 缓存应用场景
    一、MySql+Memcached架构的问题Memcached采用客户端-服务器的架构,客户端和服务器端的通讯使用自定义的协议标准,只要满足协议格式要求,客户端Library可以用任何语言实现。Memcached服务器使用基于Slab的内存管理方式,有利于减少内存碎片和频繁分配销毁内存所带来的开销。各个Slab按需......
  • nohup python app.py 1>log.log 2>&1 & 这句话代码咋解释呀,不太明白
    nohuppythonapp.py1>log.log2>&1&这句话代码咋解释呀,不太明白 GPT给的答案 克隆ChatGpt功能nohuppythonapp.py1>log.log2>&1&这句话代码咋解释呀,不太明白  这个命令可以分成几部分:-`nohup`:意思是不挂断,即使终端关闭或者用户退出登录,进程也将继续运行。-......
  • python---飞机大战小游戏(提供源码)
    项目准备:本项目在pycharm平台实现,需要安装pygame等模块游戏功能:敌机会从不同位置出现且具有不同的速度,飞机可以发射子弹击毁敌机,飞机触碰到敌机会被击落,游戏结束效果演示飞机大战视频演示完整代码项目主要有两个文件构成,分别是plane_main.py文件和plane_sprites.py文件。plane_mai......