python代码整理(2022年4月-2024年3月)

PHPer 2022-04-17 818 0 1

这里整理可用的python代码

python的运行版本默认是python3.8.9,在win7上用

网上很多代码已经过时了,网上找的代码各种报错,太花费精力时间了,这里做个整理,这些代码都是亲测可用的(2022年4月)...

立即注册

更新于:2024-03-10 23:14:09
    您需要登录后才可以评论。 立即注册

    Python和PHP获取百度url跳转的真实地址代码(2022年4月实测有效)

    网上看了很多代码才找到能用的,上面的是Python的,下面是PHP的
    import re   
    import requests 
    url = 'https://www.baidu.com/link?url=LvLG_dBUflW6_bQnGRssL5cLtpkqIJffMsdVmAiHeF8gIpu806BVDB8OfqmKFg51&wd=&eqid=c62b889a00114f8700000006625b68e5'
    
    def get_real_url(v_url):
    	"""
    	获取百度链接真实地址
    	:param v_url: 百度链接地址
    	:return: 真实地址
    	"""
    	r = requests.get(v_url,allow_redirects=False)  # 不允许重定向
    	if r.status_code == 302:  # 如果返回302,就从响应头获取真实地址
    		real_url = r.headers.get('Location')
    	else:  # 否则从返回内容中用正则表达式提取出来真实地址
    		real_url = re.findall("URL='(.*?)'", r.text)[0]
    	print('real_url is:', real_url)
    	return real_url
    
    get_real_url(url)

    返回的结果:real_url is: https://wokan.chawen.org/post/354...

    立即注册
    更新于:2022-05-28 21:26:49

    用undetected_chromedriver代替selenium解决浏览器打不开网页

    整理的很完整,good,要是早看到能节省我十几个小时不止,只不过我几乎是也走了一遍试了各种办法都是失败,最后在网上搜到了用undetected_chromedriver,解决了后在考虑有时候undetected_chromedriver启动浏览器会失败的情况,搜的时候搜到了这篇文章 2024年3月10日 23:17

    用undetected_chromedriver代替selenium解决浏览器打不开网页-CSDN博客


    关于Python爬虫代码打开网页的方法,教科书以及前辈们都推荐requests和selenium两种途径来打开网页。

    但现在越来越多网站建立反爬虫机制,比如我最近爬的一个机构网站,首页需要登录,前辈们的旧方法越来越不管用了:

    方案1:requests的get和post:需要录入headers,以及post所需的表单数据。但我败在了获取post的表单数据这一步,试了很长时间都无法登录。

    结果:requests方案失败。

    方案2:selenium的webdriver:打开Chrome浏览器来模拟人工登录,往headers添加user-agent的代码如下:

    1. from selenium import webdriver
    2. from selenium.webdriver.chrome.options import Options
    3. options = webdriver.ChromeOptions()
    4. driver = webdriver.Chrome(options=options)
    5. driver.execute_cdp_cmd("Network.setExtraHTTPHeaders",
    6. {"headers":
    7. {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36",
    8. }
    9. })
    10. url=http://这里改为你要打开的网址
    11. driver.get(url)

    浏览器显示:Chrome正受到自动测试软件的控制。某些网站已经检测到是selenium在模拟浏览器,尽管我怎么设置headers也无济于事,浏览器打开的页面不是空白,就是返回400或502等错误代码。

    结果:selenium的webdriver方案失败。

    方案3:浏览器按F12,打开console,输入命令:window.navigator.webdriver,如果返回True则说明网站会检测selenium的webdriver。前辈们的方法是在driver.get命令之前增加下面的代码,使得window.navigator.webdriver返回undefined:

    1. # 去除“Chrome正受到自动测试软件的控制”的显示
    2. options.add_experimental_option("excludeSwitches", ["enable-automation"])
    3. # 防止网站检测selenium的webdriver
    4. driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
    5. "source": """
    6. Object.defineProperty(navigator, webdriver, {
    7. get: () => undefined
    8. })
    9. """})

    结果:插入undefined代码,浏览器页面依旧显示空白,失败。

    方案4:改用Firefox浏览器,不用添加方案3的代码。

    前辈们推荐过该方案,可能对某些网站有效,但在我要爬的机构网站还是失败。代码我就不贴了。 ...

    立即注册
    更新于:2024-03-10 23:54:38

    Pip/python-如何查看已安装的包有哪些版本?如何查看某个包存在哪些版本?pip list-pip freeze-pip show package

    Pip/python-如何查看已安装的包有哪些版本?如何查看某个包存在哪些版本?pip list-pip freeze-pip show package_pip查看某个包的版本-CSDN博客


    目录

    一、如何查看已安装的包有哪些版本?

    1.在terminal终端模式或者cmd命令行模式下

    1.1显示所有包pip list和pip freeze

    1.2显示指定包findstr、show、.__version__

    2.在文本模式(程序文件中),或者console交互模式中

    二、如何查看某个包存在哪些版本?


    一、如何查看已安装的包有哪些版本?

    下面以pycharm中的terminal终端模式和windows系统自带的行模式为框架进行讲解。在Windows系统下,pycharm的terminal终端模式其实就是调用cmd和powershell,可以根据设置设为是调用powershell还是cmd。下图是调用powershell,

    图1 更改pycharm的terminal中shell path为

    图2 更改pycharm的terminal中shell path为cmd

    1.在terminal终端模式或者cmd命令行模式下

    1.1显示所有包pip list和pip freeze

    如果已经安装的包数量不够多,可以直接使用pip list和pip freeze显示所有包及其版本。

    图3 在cmd黑窗口中执行pip list命令的输出结果

    图4 在cmd黑窗口中执行pip freeze命令的输出结果

    从图3和图4中可见,这两种方法得到的结果内容相同,只是显示样式不一样。

    1.2显示指定包、show、.__version__

    如果已安装的包很多,那么还是建议想查看什么包就指定什么包。

    下面以查看已安装的numpy的版本为例,如果想看其他包,直接替换就行。

    (1)pip show numpy

    这个命令显示的信息很多,不仅显示了已安装包的版本,还有它的网址、简介等信息。

    ...

    立即注册
    更新于:2024-03-10 23:15:52

    sublime text下 Python 问题:TabError: inconsistent use of tabs and spaces in indentation

    sublime text下 Python 问题:TabError: inconsistent use of tabs and spaces in indentation_sublime inconsistent use of tabs and spaces in ind-CSDN博客


    File "G:\ST\Python\code.py", line 52
    while left < right and (nums[left] == nums[left+1]):
    TabError: inconsistent use of tabs and spaces in indentation
    

    怎么都搞不定,原因是自己偷懒了,从LeetCode上面复制了头部,尾部是自己手写的,方案就是全部推倒,重来,全部手写。

    class Solution:
        def threeSum(self, nums):
            """
            :type nums: List[int]
            :rtype: List[List[int]]
            """
    

    网友方案,检查subline的空格制表显示就可以清楚的显示出自己是否真的空格了。

    操作:

    在 text中Preferences->Settings-User中添加以下代码:

    ,
    "draw_white_space": "all"
    

    注意:如果你的设置里面还有其他东西,你就需要添加逗号让两个不同的设置分割开来

    sublime 会显示横线和点出来 ...

    立即注册
    更新于:2024-03-28 23:34:10
    相关内容

    Yii2 报错代码整理

    Yii2 HeadersAlreadySentException 报错

    Yii2报错 Object configuration must be an array containing a "class" o...

    编程代码调试相关

    php开启错误提示

    Opencart 代码学习

    Opencart3首页视图导航banner下的Featured的视图

    代码编程学习中发现的问题

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    人气美女女优百度指数排行榜(波多野结衣,苍井空,三上悠亚,深田咏美,桥本有菜,北条...

    最强人造人深田咏美,业界的社交女王

    人生起起落落的三上悠亚,成名前的清纯风,怎么搭配出来的?

    业内第一大长腿,桥本有菜的腿究竟有多长

    波多野结衣,岛国业界著作最多的超级劳模

    日本AV界NO.1,苍井空是多少宅男的疯狂?

    美女女优视频混剪 This Girl-Laza Morgan

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享