Mac brew install youtube-dl 【 youtube 下载工具:youtube-dl 安装】


文章目录

    • 1. 简介
    • 2. 预备
    • 3. 安装
    • 4. 命令
    • 5. 测试

1. 简介

youtube-dl - 从youtube.com或其他视频平台下载视频

  • https://github.com/ytdl-org/youtube-dl

2. 预备

  • 安装并配置 git
  • 安装 brew

3. 安装

MacBook-Pro ~ % brew install youtube-dl
Warning: youtube-dl has been deprecated because it has a failing test since forever and no new release since 2021!
==> Downloading https://ghcr.io/v2/homebrew/core/youtube-dl/manifests/2021.12.17-4
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/3e5fe850d76ce50aa781115af8c54ae4d2e1ca78acfb239ba5ccfeef12dc9fa7--youtube-dl-2021.12.17-4.bottle_manifest.json
==> Fetching dependencies for youtube-dl: mpdecimal, ca-certificates, openssl@3, readline, sqlite, xz and [email protected]
==> Downloading https://ghcr.io/v2/homebrew/core/mpdecimal/manifests/2.5.1
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/f367c2ee08c56b88be0662703a8e4275f8657608a268c8c44e845154b0cea543--mpdecimal-2.5.1.bottle_manifest.json
==> Fetching mpdecimal
==> Downloading https://ghcr.io/v2/homebrew/core/mpdecimal/blobs/sha256:95079d5b0a5114d1f3ccbe5f036a4729f3731d062ea5fc9d8c61241ddc22f7e2
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/2ce90c561ee2bedfebafe76ec3982114b68a77808932e731fd513cef0d8afafd--mpdecimal--2.5.1.arm64_sonoma.bottle.tar.gz
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2023-12-12
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/13aa86e429e05d02a76005d1881eaf625091a5ac4dc7d7674c706d12ba48796a--ca-certificates-2023-12-12.bottle_manifest.json
==> Fetching ca-certificates
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/blobs/sha256:5c99ffd0861f01adc19cab495027024f7d890e42a9e7b689706b85c8e2b9c9b3
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/5505d583ff92cdbc68f67ea2ab46070695997373cf79e708dd7fa7c352265322--ca-certificates--2023-12-12.all.bottle.tar.gz
==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/manifests/3.2.0_1
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/8e5415de690efd057f74775ab4b808fed9a50bf29c34ee9cb52118d189ef73a9--openssl@3-3.2.0_1.bottle_manifest.json
==> Fetching openssl@3
==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/blobs/sha256:6519a6ff8e3e10f921ba8ec7ac00a67afc80e346f262115956b3c826541899f5
############################################################################################################################################################################################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/readline/manifests/8.2.7
############################################################################################################################################################################################################################################## 100.0%
==> Fetching readline
==> Downloading https://ghcr.io/v2/homebrew/core/readline/blobs/sha256:4b08134e70e90a968bf82227fbec6861b07fdf630e7ab66e6effe95b6721cf36
############################################################################################################################################################################################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/sqlite/manifests/3.44.2
############################################################################################################################################################################################################################################## 100.0%
==> Fetching sqlite
==> Downloading https://ghcr.io/v2/homebrew/core/sqlite/blobs/sha256:0e4b89c838f4523296c2250d68a1b5f74196ea2ed15bd5021afeb143ede57ebb
############################################################################################################################################################################################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/xz/manifests/5.4.5
############################################################################################################################################################################################################################################## 100.0%
==> Fetching xz
==> Downloading https://ghcr.io/v2/homebrew/core/xz/blobs/sha256:ea718d075502d4457709da89e8e424aa22cfa19d2e16088c43feb87f7c2c477a
############################################################################################################################################################################################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/python/3.12/manifests/3.12.1
############################################################################################################################################################################################################################################## 100.0%
==> Fetching [email protected]
==> Downloading https://ghcr.io/v2/homebrew/core/python/3.12/blobs/sha256:cb1129c121cf124512dde5a7002d9aa10b671c5cb6c86402392f2c6c2bfe26e9
############################################################################################################################################################################################################################################## 100.0%
==> Fetching youtube-dl
==> Downloading https://ghcr.io/v2/homebrew/core/youtube-dl/blobs/sha256:86ad6daf8ba59b37855706201030abfdfa6a334d66ee80ee6351212baa1fccaa
############################################################################################################################################################################################################################################## 100.0%
==> Installing dependencies for youtube-dl: mpdecimal, ca-certificates, openssl@3, readline, sqlite, xz and [email protected]
==> Installing youtube-dl dependency: mpdecimal
==> Downloading https://ghcr.io/v2/homebrew/core/mpdecimal/manifests/2.5.1
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/f367c2ee08c56b88be0662703a8e4275f8657608a268c8c44e845154b0cea543--mpdecimal-2.5.1.bottle_manifest.json
==> Pouring mpdecimal--2.5.1.arm64_sonoma.bottle.tar.gz
  /opt/homebrew/Cellar/mpdecimal/2.5.1: 71 files, 2.1MB
==> Installing youtube-dl dependency: ca-certificates
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2023-12-12
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/13aa86e429e05d02a76005d1881eaf625091a5ac4dc7d7674c706d12ba48796a--ca-certificates-2023-12-12.bottle_manifest.json
==> Pouring ca-certificates--2023-12-12.all.bottle.tar.gz
==> Regenerating CA certificate bundle from keychain, this may take a while...
  /opt/homebrew/Cellar/ca-certificates/2023-12-12: 3 files, 226.7KB
==> Installing youtube-dl dependency: openssl@3
==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/manifests/3.2.0_1
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/8e5415de690efd057f74775ab4b808fed9a50bf29c34ee9cb52118d189ef73a9--openssl@3-3.2.0_1.bottle_manifest.json
==> Pouring [email protected]_1.arm64_sonoma.bottle.tar.gz
  /opt/homebrew/Cellar/openssl@3/3.2.0_1: 6,805 files, 31.9MB
==> Installing youtube-dl dependency: readline
==> Downloading https://ghcr.io/v2/homebrew/core/readline/manifests/8.2.7
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/14125f7fa4b49853f76160b864f58379d90e52833ffeb8bd0643609bcd7f02a7--readline-8.2.7.bottle_manifest.json
==> Pouring readline--8.2.7.arm64_sonoma.bottle.tar.gz
  /opt/homebrew/Cellar/readline/8.2.7: 50 files, 1.7MB
==> Installing youtube-dl dependency: sqlite
==> Downloading https://ghcr.io/v2/homebrew/core/sqlite/manifests/3.44.2
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/1e19b0e6cb419159b49df50f3595c3b44e67ec5f5d1110ece66a9785df57a844--sqlite-3.44.2.bottle_manifest.json
==> Pouring sqlite--3.44.2.arm64_sonoma.bottle.tar.gz
  /opt/homebrew/Cellar/sqlite/3.44.2: 11 files, 4.7MB
==> Installing youtube-dl dependency: xz
==> Downloading https://ghcr.io/v2/homebrew/core/xz/manifests/5.4.5
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/4e81fda476fb634a7e1ac650019bfe768a65d6c387015992df4cd75adf9b3fce--xz-5.4.5.bottle_manifest.json
==> Pouring xz--5.4.5.arm64_sonoma.bottle.tar.gz
  /opt/homebrew/Cellar/xz/5.4.5: 163 files, 2.6MB
==> Installing youtube-dl dependency: [email protected]
==> Downloading https://ghcr.io/v2/homebrew/core/python/3.12/manifests/3.12.1
Already downloaded: /Users/zongxun/Library/Caches/Homebrew/downloads/b13664874124f24d86fbf576412860426d44202df0a3a858c00900d566c12ea4--python@3.12-3.12.1.bottle_manifest.json
==> Pouring [email protected]_sonoma.bottle.tar.gz
==> /opt/homebrew/Cellar/[email protected]/3.12.1/bin/python3.12 -Im ensurepip
==> /opt/homebrew/Cellar/[email protected]/3.12.1/bin/python3.12 -Im pip install -v --no-index --upgrade --isolated --target=/opt/homebrew/lib/python3.12/site-packages /opt/homebrew/Cellar/[email protected]/3.12.1/Frameworks/Python.framework/Versions/3.12/l
  /opt/homebrew/Cellar/[email protected]/3.12.1: 3,225 files, 65.3MB
==> Installing youtube-dl
==> Pouring youtube-dl--2021.12.17.arm64_sonoma.bottle.4.tar.gz
==> Caveats
The current youtube-dl version has many unresolved issues.
Upstream have not tagged a new release since 2021.

Please use yt-dlp instead.
==> Summary
  /opt/homebrew/Cellar/youtube-dl/2021.12.17: 846 files, 5.9MB
==> Running `brew cleanup youtube-dl`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Caveats
==> youtube-dl
The current youtube-dl version has many unresolved issues.
Upstream have not tagged a new release since 2021.

Please use yt-dlp instead.

4. 命令

MacBook-Pro ~ % youtube-dl -h
Usage: youtube-dl [OPTIONS] URL [URL...]

Options:
  General Options:
    -h, --help                           Print this help text and exit
    --version                            Print program version and exit
    -U, --update                         Update this program to latest version. Make sure that you have sufficient permissions (run with sudo if needed)
    -i, --ignore-errors                  Continue on download errors, for example to skip unavailable videos in a playlist
    --abort-on-error                     Abort downloading of further videos (in the playlist or the command line) if an error occurs
    --dump-user-agent                    Display the current browser identification
    --list-extractors                    List all supported extractors
    --extractor-descriptions             Output descriptions of all supported extractors
    --force-generic-extractor            Force extraction to use the generic extractor
    --default-search PREFIX              Use this prefix for unqualified URLs. For example "gvsearch2:" downloads two videos from google videos for youtube-dl "large apple". Use the value "auto" to let youtube-dl guess ("auto_warning" to emit a
                                         warning when guessing). "error" just throws an error. The default value "fixup_error" repairs broken URLs, but emits an error if this is not possible instead of searching.
    --ignore-config                      Do not read configuration files. When given in the global configuration file /etc/youtube-dl.conf: Do not read the user configuration in ~/.config/youtube-dl/config (%APPDATA%/youtube-dl/config.txt on
                                         Windows)
    --config-location PATH               Location of the configuration file; either the path to the config or its containing directory.
    --flat-playlist                      Do not extract the videos of a playlist, only list them.
    --mark-watched                       Mark videos watched (YouTube only)
    --no-mark-watched                    Do not mark videos watched (YouTube only)
    --no-color                           Do not emit color codes in output

  Network Options:
    --proxy URL                          Use the specified HTTP/HTTPS/SOCKS proxy. To enable SOCKS proxy, specify a proper scheme. For example socks5://127.0.0.1:1080/. Pass in an empty string (--proxy "") for direct connection
    --socket-timeout SECONDS             Time to wait before giving up, in seconds
    --source-address IP                  Client-side IP address to bind to
    -4, --force-ipv4                     Make all connections via IPv4
    -6, --force-ipv6                     Make all connections via IPv6

  Geo Restriction:
    --geo-verification-proxy URL         Use this proxy to verify the IP address for some geo-restricted sites. The default proxy specified by --proxy (or none, if the option is not present) is used for the actual downloading.
    --geo-bypass                         Bypass geographic restriction via faking X-Forwarded-For HTTP header
    --no-geo-bypass                      Do not bypass geographic restriction via faking X-Forwarded-For HTTP header
    --geo-bypass-country CODE            Force bypass geographic restriction with explicitly provided two-letter ISO 3166-2 country code
    --geo-bypass-ip-block IP_BLOCK       Force bypass geographic restriction with explicitly provided IP block in CIDR notation

  Video Selection:
    --playlist-start NUMBER              Playlist video to start at (default is 1)
    --playlist-end NUMBER                Playlist video to end at (default is last)
    --playlist-items ITEM_SPEC           Playlist video items to download. Specify indices of the videos in the playlist separated by commas like: "--playlist-items 1,2,5,8" if you want to download videos indexed 1, 2, 5, 8 in the playlist. You
                                         can specify range: "--playlist-items 1-3,7,10-13", it will download the videos at index 1, 2, 3, 7, 10, 11, 12 and 13.
    --match-title REGEX                  Download only matching titles (regex or caseless sub-string)
    --reject-title REGEX                 Skip download for matching titles (regex or caseless sub-string)
    --max-downloads NUMBER               Abort after downloading NUMBER files
    --min-filesize SIZE                  Do not download any videos smaller than SIZE (e.g. 50k or 44.6m)
    --max-filesize SIZE                  Do not download any videos larger than SIZE (e.g. 50k or 44.6m)
    --date DATE                          Download only videos uploaded in this date
    --datebefore DATE                    Download only videos uploaded on or before this date (i.e. inclusive)
    --dateafter DATE                     Download only videos uploaded on or after this date (i.e. inclusive)
    --min-views COUNT                    Do not download any videos with less than COUNT views
    --max-views COUNT                    Do not download any videos with more than COUNT views
    --match-filter FILTER                Generic video filter. Specify any key (see the "OUTPUT TEMPLATE" for a list of available keys) to match if the key is present, !key to check if the key is not present, key > NUMBER (like "comment_count >
                                         12", also works with >=, <, <=, !=, =) to compare against a number, key = 'LITERAL' (like "uploader = 'Mike Smith'", also works with !=) to match against a string literal and & to require multiple
                                         matches. Values which are not known are excluded unless you put a question mark (?) after the operator. For example, to only match videos that have been liked more than 100 times and disliked less than 50
                                         times (or the dislike functionality is not available at the given service), but who also have a description, use --match-filter "like_count > 100 & dislike_count  .
    --no-playlist                        Download only the video, if the URL refers to a video and a playlist.
    --yes-playlist                       Download the playlist, if the URL refers to a video and a playlist.
    --age-limit YEARS                    Download only videos suitable for the given age
    --download-archive FILE              Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it.
    --include-ads                        Download advertisements as well (experimental)

  Download Options:
    -r, --limit-rate RATE                Maximum download rate in bytes per second (e.g. 50K or 4.2M)
    -R, --retries RETRIES                Number of retries (default is 10), or "infinite".
    --fragment-retries RETRIES           Number of retries for a fragment (default is 10), or "infinite" (DASH, hlsnative and ISM)
    --skip-unavailable-fragments         Skip unavailable fragments (DASH, hlsnative and ISM)
    --abort-on-unavailable-fragment      Abort downloading when some fragment is not available
    --keep-fragments                     Keep downloaded fragments on disk after downloading is finished; fragments are erased by default
    --buffer-size SIZE                   Size of download buffer (e.g. 1024 or 16K) (default is 1024)
    --no-resize-buffer                   Do not automatically adjust the buffer size. By default, the buffer size is automatically resized from an initial value of SIZE.
    --http-chunk-size SIZE               Size of a chunk for chunk-based HTTP downloading (e.g. 10485760 or 10M) (default is disabled). May be useful for bypassing bandwidth throttling imposed by a webserver (experimental)
    --playlist-reverse                   Download playlist videos in reverse order
    --playlist-random                    Download playlist videos in random order
    --xattr-set-filesize                 Set file xattribute ytdl.filesize with expected file size
    --hls-prefer-native                  Use the native HLS downloader instead of ffmpeg
    --hls-prefer-ffmpeg                  Use ffmpeg instead of the native HLS downloader
    --hls-use-mpegts                     Use the mpegts container for HLS videos, allowing to play the video while downloading (some players may not be able to play it)
    --external-downloader COMMAND        Use the specified external downloader. Currently supports aria2c,avconv,axel,curl,ffmpeg,httpie,wget
    --external-downloader-args ARGS      Give these arguments to the external downloader

  Filesystem Options:
    -a, --batch-file FILE                File containing URLs to download ('-' for stdin), one URL per line. Lines starting with '#', ';' or ']' are considered as comments and ignored.
    --id                                 Use only video ID in file name
    -o, --output TEMPLATE                Output filename template, see the "OUTPUT TEMPLATE" for all the info
    --output-na-placeholder PLACEHOLDER  Placeholder value for unavailable meta fields in output filename template (default is "NA")
    --autonumber-start NUMBER            Specify the start value for %(autonumber)s (default is 1)
    --restrict-filenames                 Restrict filenames to only ASCII characters, and avoid "&" and spaces in filenames
    -w, --no-overwrites                  Do not overwrite files
    -c, --continue                       Force resume of partially downloaded files. By default, youtube-dl will resume downloads if possible.
    --no-continue                        Do not resume partially downloaded files (restart from beginning)
    --no-part                            Do not use .part files - write directly into output file
    --no-mtime                           Do not use the Last-modified header to set the file modification time
    --write-description                  Write video description to a .description file
    --write-info-json                    Write video metadata to a .info.json file
    --write-annotations                  Write video annotations to a .annotations.xml file
    --load-info-json FILE                JSON file containing the video information (created with the "--write-info-json" option)
    --cookies FILE                       File to read cookies from and dump cookie jar in
    --cache-dir DIR                      Location in the filesystem where youtube-dl can store some downloaded information permanently. By default $XDG_CACHE_HOME/youtube-dl or ~/.cache/youtube-dl . At the moment, only YouTube player files (for
                                         videos with obfuscated signatures) are cached, but that may change.
    --no-cache-dir                       Disable filesystem caching
    --rm-cache-dir                       Delete all filesystem cache files

  Thumbnail Options:
    --write-thumbnail                    Write thumbnail image to disk
    --write-all-thumbnails               Write all thumbnail image formats to disk
    --list-thumbnails                    Simulate and list all available thumbnail formats

  Verbosity / Simulation Options:
    -q, --quiet                          Activate quiet mode
    --no-warnings                        Ignore warnings
    -s, --simulate                       Do not download the video and do not write anything to disk
    --skip-download                      Do not download the video
    -g, --get-url                        Simulate, quiet but print URL
    -e, --get-title                      Simulate, quiet but print title
    --get-id                             Simulate, quiet but print id
    --get-thumbnail                      Simulate, quiet but print thumbnail URL
    --get-description                    Simulate, quiet but print video description
    --get-duration                       Simulate, quiet but print video length
    --get-filename                       Simulate, quiet but print output filename
    --get-format                         Simulate, quiet but print output format
    -j, --dump-json                      Simulate, quiet but print JSON information. See the "OUTPUT TEMPLATE" for a description of available keys.
    -J, --dump-single-json               Simulate, quiet but print JSON information for each command-line argument. If the URL refers to a playlist, dump the whole playlist information in a single line.
    --print-json                         Be quiet and print the video information as JSON (video is still being downloaded).
    --newline                            Output progress bar as new lines
    --no-progress                        Do not print progress bar
    --console-title                      Display progress in console titlebar
    -v, --verbose                        Print various debugging information
    --dump-pages                         Print downloaded pages encoded using base64 to debug problems (very verbose)
    --write-pages                        Write downloaded intermediary pages to files in the current directory to debug problems
    --print-traffic                      Display sent and read HTTP traffic
    -C, --call-home                      Contact the youtube-dl server for debugging
    --no-call-home                       Do NOT contact the youtube-dl server for debugging

  Workarounds:
    --encoding ENCODING                  Force the specified encoding (experimental)
    --no-check-certificate               Suppress HTTPS certificate validation
    --prefer-insecure                    Use an unencrypted connection to retrieve information about the video. (Currently supported only for YouTube)
    --user-agent UA                      Specify a custom user agent
    --referer URL                        Specify a custom referer, use if the video access is restricted to one domain
    --add-header FIELD:VALUE             Specify a custom HTTP header and its value, separated by a colon ':'. You can use this option multiple times
    --bidi-workaround                    Work around terminals that lack bidirectional text support. Requires bidiv or fribidi executable in PATH
    --sleep-interval SECONDS             Number of seconds to sleep before each download when used alone or a lower bound of a range for randomized sleep before each download (minimum possible number of seconds to sleep) when used along with
                                         --max-sleep-interval.
    --max-sleep-interval SECONDS         Upper bound of a range for randomized sleep before each download (maximum possible number of seconds to sleep). Must only be used along with --min-sleep-interval.

  Video Format Options:
    -f, --format FORMAT                  Video format code, see the "FORMAT SELECTION" for all the info
    --all-formats                        Download all available video formats
    --prefer-free-formats                Prefer free video formats unless a specific one is requested
    -F, --list-formats                   List all available formats of requested videos
    --youtube-skip-dash-manifest         Do not download the DASH manifests and related data on YouTube videos
    --merge-output-format FORMAT         If a merge is required (e.g. bestvideo+bestaudio), output to given container format. One of mkv, mp4, ogg, webm, flv. Ignored if no merge is required

  Subtitle Options:
    --write-sub                          Write subtitle file
    --write-auto-sub                     Write automatically generated subtitle file (YouTube only)
    --all-subs                           Download all the available subtitles of the video
    --list-subs                          List all available subtitles for the video
    --sub-format FORMAT                  Subtitle format, accepts formats preference, for example: "srt" or "ass/srt/best"
    --sub-lang LANGS                     Languages of the subtitles to download (optional) separated by commas, use --list-subs for available language tags

  Authentication Options:
    -u, --username USERNAME              Login with this account ID
    -p, --password PASSWORD              Account password. If this option is left out, youtube-dl will ask interactively.
    -2, --twofactor TWOFACTOR            Two-factor authentication code
    -n, --netrc                          Use .netrc authentication data
    --video-password PASSWORD            Video password (vimeo, youku)

  Adobe Pass Options:
    --ap-mso MSO                         Adobe Pass multiple-system operator (TV provider) identifier, use --ap-list-mso for a list of available MSOs
    --ap-username USERNAME               Multiple-system operator account login
    --ap-password PASSWORD               Multiple-system operator account password. If this option is left out, youtube-dl will ask interactively.
    --ap-list-mso                        List all supported multiple-system operators

  Post-processing Options:
    -x, --extract-audio                  Convert video files to audio-only files (requires ffmpeg/avconv and ffprobe/avprobe)
    --audio-format FORMAT                Specify audio format: "best", "aac", "flac", "mp3", "m4a", "opus", "vorbis", or "wav"; "best" by default; No effect without -x
    --audio-quality QUALITY              Specify ffmpeg/avconv audio quality, insert a value between 0 (better) and 9 (worse) for VBR or a specific bitrate like 128K (default 5)
    --recode-video FORMAT                Encode the video to another format if necessary (currently supported: mp4|flv|ogg|webm|mkv|avi)
    --postprocessor-args ARGS            Give these arguments to the postprocessor
    -k, --keep-video                     Keep the video file on disk after the post-processing; the video is erased by default
    --no-post-overwrites                 Do not overwrite post-processed files; the post-processed files are overwritten by default
    --embed-subs                         Embed subtitles in the video (only for mp4, webm and mkv videos)
    --embed-thumbnail                    Embed thumbnail in the audio as cover art
    --add-metadata                       Write metadata to the video file
    --metadata-from-title FORMAT         Parse additional metadata like song title / artist from the video title. The format syntax is the same as --output. Regular expression with named capture groups may also be used. The parsed parameters
                                         replace existing values. Example: --metadata-from-title "%(artist)s - %(title)s" matches a title like "Coldplay - Paradise". Example (regex): --metadata-from-title "(?P.+?) - (?P.+)"</span>
    <span class="token parameter variable">--xattrs</span>                             Write metadata to the video <span class="token function">file</span><span class="token string">'s xattrs (using dublin core and xdg standards)
    --fixup POLICY                       Automatically correct known faults of the file. One of never (do nothing), warn (only emit a warning), detect_or_warn (the default; fix file if we can, warn otherwise)
    --prefer-avconv                      Prefer avconv over ffmpeg for running the postprocessors
    --prefer-ffmpeg                      Prefer ffmpeg over avconv for running the postprocessors (default)
    --ffmpeg-location PATH               Location of the ffmpeg/avconv binary; either the path to the binary or its containing directory.
    --exec CMD                           Execute a command on the file after downloading and post-processing, similar to find'</span>s <span class="token parameter variable">-exec</span> syntax. Example: <span class="token parameter variable">--exec</span> <span class="token string">'adb push {} /sdcard/Music/ && rm {}'</span>
    --convert-subs FORMAT                Convert the subtitles to other <span class="token function">format</span> <span class="token punctuation">(</span>currently supported: srt<span class="token operator">|</span>ass<span class="token operator">|</span>vtt<span class="token operator">|</span>lrc<span class="token punctuation">)</span>
</code></pre> 
  <h3>5. 测试</h3> 
  <pre><code class="prism language-bash">MacBook-Pro Movies % <span class="token function">mkdir</span> youtube <span class="token operator">&&</span> <span class="token builtin class-name">cd</span> youtube
MacBook-Pro youtube % youtube-dl <span class="token string">'https://www.youtube.com/watch?v=zBAxiQi2nPc'</span>
<span class="token punctuation">[</span>youtube<span class="token punctuation">]</span> zBAxiQi2nPc: Downloading webpage
WARNING: unable to extract uploader <span class="token function">id</span><span class="token punctuation">;</span> please report this issue on https://yt-dl.org/bug <span class="token builtin class-name">.</span> Make sure you are using the latest version<span class="token punctuation">;</span> see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the <span class="token parameter variable">--verbose</span> flag and include its complete output.
<span class="token punctuation">[</span>download<span class="token punctuation">]</span> Destination: NVIDIA REFUSED To Send Us This - NVIDIA A100-zBAxiQi2nPc.mp4
<span class="token punctuation">[</span>download<span class="token punctuation">]</span> <span class="token number">100</span>% of <span class="token number">98</span>.50MiB <span class="token keyword">in</span> <span class="token number">39</span>:29
</code></pre> 
  <p>下载 98.50MB 视频竟然花费了 40分钟,效率相当低。需要参数改进。</p> 
 </div> 
</div>��������������������������������
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1736296502998917120"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(mac,macos,apple,youtube,工具,下载)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1903751412676882432.htm"
                           title="轻松上手:Matplotlib的基本用法全知道" target="_blank">轻松上手:Matplotlib的基本用法全知道</a>
                        <span class="text-muted">大数据方向陪跑私教</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>《轻松上手:Matplotlib的基本用法全知道》嗨,小伙伴们!之前咱们了解了好多厉害的Python包,今天咱们来好好讲讲Matplotlib这个在数据可视化方面超棒的包。**Matplotlib到底该怎么用呢?**这就像是探索一个新的游乐场,每个功能都是一样好玩的项目。一、安装Matplotlib在开始使用Matplotlib之前,得先把它安装好。如果你已经安装了Python的包管理工具pip,</div>
                    </li>
                    <li><a href="/article/1903749522815774720.htm"
                           title="解码软件需求的三个维度:从满足基础到创造惊喜" target="_blank">解码软件需求的三个维度:从满足基础到创造惊喜</a>
                        <span class="text-muted">技术管理修行</span>
<a class="tag" taget="_blank" href="/search/%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86/1.htm">项目管理</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E7%B3%BB%E7%BB%9F%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86%E5%B8%88/1.htm">信息系统项目管理师</a><a class="tag" taget="_blank" href="/search/%E9%9C%80%E6%B1%82%E5%88%86%E6%9E%90/1.htm">需求分析</a><a class="tag" taget="_blank" href="/search/%E8%B4%A8%E9%87%8F%E5%8A%9F%E8%83%BD%E9%83%A8%E7%BD%B2/1.htm">质量功能部署</a><a class="tag" taget="_blank" href="/search/%E9%9C%80%E6%B1%82%E7%AE%A1%E7%90%86/1.htm">需求管理</a><a class="tag" taget="_blank" href="/search/%E5%B8%B8%E8%A7%84%E9%9C%80%E6%B1%82/1.htm">常规需求</a><a class="tag" taget="_blank" href="/search/%E6%9C%9F%E6%9C%9B%E9%9C%80%E6%B1%82/1.htm">期望需求</a><a class="tag" taget="_blank" href="/search/%E6%84%8F%E5%A4%96%E9%9C%80%E6%B1%82/1.htm">意外需求</a><a class="tag" taget="_blank" href="/search/%E7%94%A8%E6%88%B7%E4%BD%93%E9%AA%8C/1.htm">用户体验</a>
                        <div>在软件开发的世界里,用户需求就像一张复杂的地图,指引着产品前进的方向。但并非所有需求都能带来同样的价值——有些是产品生存的“氧气”,有些是吸引用户的“磁石”,还有一些则是让人眼前一亮的“魔法”。如何区分它们?质量功能展开(QFD)提出的常规需求、期望需求、意外需求分类法,为团队提供了一把解开需求迷局的钥匙。1.常规需求:没有它,产品活不下去想象一下,你下载了一款外卖App,却发现无法下单支付;或者</div>
                    </li>
                    <li><a href="/article/1903748514605756416.htm"
                           title="如何在 Bash 中不依赖 curl 或 wget 发出 HTTP 请求并实现文件传输——/dev/tcp的妙用" target="_blank">如何在 Bash 中不依赖 curl 或 wget 发出 HTTP 请求并实现文件传输——/dev/tcp的妙用</a>
                        <span class="text-muted">vortex5</span>
<a class="tag" taget="_blank" href="/search/bash/1.htm">bash</a><a class="tag" taget="_blank" href="/search/http/1.htm">http</a><a class="tag" taget="_blank" href="/search/tcp%2Fip/1.htm">tcp/ip</a>
                        <div>1.前言在Bash脚本编程中,发送HTTP请求通常依赖于像curl或wget这样的外部工具。然而,Bash本身隐藏着一个鲜为人知的功能:通过内置的/dev/tcp或/dev/udp伪设备,可以直接与网络进行交互,而无需额外安装任何工具。这个特性最初由KornShell(ksh)引入,后来被Bash继承,其设计初衷是为了方便用户通过网络发送数据,例如生成报告或执行简单的网络操作。然而,这个功能也因其</div>
                    </li>
                    <li><a href="/article/1903745866334793728.htm"
                           title="Ubuntu 20.04 安装并使用Cursor" target="_blank">Ubuntu 20.04 安装并使用Cursor</a>
                        <span class="text-muted">爱学习的小道长</span>
<a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a><a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a>
                        <div>1.安装1.1下载cursor官网:https://www.cursor.com/cn点击下载LINUX查看下载下来的文件:$ls~/Downloads/Cursor-0.47.8-82ef0f61c01d079d1b7e5ab04d88499d5af500e3.deb.glibc2.25-x86_64.AppImage/home/xxx/Downloads/Cursor-0.47.8-82ef0</div>
                    </li>
                    <li><a href="/article/1903743473345949696.htm"
                           title="QGIS结合天地图API实现批量经纬度转地址的完整指南" target="_blank">QGIS结合天地图API实现批量经纬度转地址的完整指南</a>
                        <span class="text-muted">网优随笔</span>
<a class="tag" taget="_blank" href="/search/QGIS/1.htm">QGIS</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E8%BD%AF%E4%BB%B6/1.htm">开源软件</a>
                        <div>一、技术背景与工具选择地理编码(Geocoding)是将地址转换为地理坐标的过程,反向地理编码(ReverseGeocoding)则是将经纬度坐标转换为结构化地址。QGIS作为开源GIS平台,通过插件扩展可实现批量地理编码操作。天地图作为我国权威地理信息服务平台,其API提供高精度的地理编码服务。本文将以QGIS3.22+版本为基础,结合天地图Web服务API,实现5000条级数据的批量反向地理编</div>
                    </li>
                    <li><a href="/article/1903740825343422464.htm"
                           title="conda install 和 pip install 的区别" target="_blank">conda install 和 pip install 的区别</a>
                        <span class="text-muted">不知江月待何人..</span>
<a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a>
                        <div>condainstall和pipinstall是两个常用的包安装命令,但它们在很多方面存在差异。1.所属管理系统不同1.1condainstallcondainstall是Anaconda和Miniconda发行版自带的包管理工具conda的安装命令。conda是一个跨平台的开源包管理系统和环境管理系统,它不仅可以管理Python包,还能管理其他语言(如R、C++等)的包。conda更侧重于数据科</div>
                    </li>
                    <li><a href="/article/1903740317501288448.htm"
                           title="探秘知乎数据抓取神器 —— zhihu-spider" target="_blank">探秘知乎数据抓取神器 —— zhihu-spider</a>
                        <span class="text-muted">丁慧湘Gwynne</span>

                        <div>探秘知乎数据抓取神器——zhihu-spider项目地址:https://gitcode.com/gh_mirrors/zh/zhihu-spider在知识的海洋中畅游,每一份数据都可能成为智慧的火花。今天,我们来一起探索一个专为知乎设计的数据爬虫工具——zhihu-spider,它是由计算机科学研究生MorganZhang精心打造的开源宝藏。项目介绍zhihu-spider,正如其名,是一个针对</div>
                    </li>
                    <li><a href="/article/1903736032210251776.htm"
                           title="Ubuntu实时读取音乐软件的音频流" target="_blank">Ubuntu实时读取音乐软件的音频流</a>
                        <span class="text-muted">冬瓜~</span>
<a class="tag" taget="_blank" href="/search/Linux%E5%BC%80%E5%8F%91/1.htm">Linux开发</a><a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/portaudio/1.htm">portaudio</a>
                        <div>文章目录一.前言二.开发环境三.具体操作四.实际效果一.前言起因是这样的,我需要在Ubuntu中,实时读取正在播放音乐的音频流,然后对音频进行相关的处理。本来打算使用的Pipewire+Helvum的方式实现,好处是可以直接利用Helvum图形化工具对软件输出的音频进行重定向,但是由于使用的是Ubuntu20.04,默认的音频服务器使用的是PulseAudio,替换为Pipewire后,播放的音频</div>
                    </li>
                    <li><a href="/article/1903735905991061504.htm"
                           title="Python 爬虫实战:从知乎盐选专栏,爬取优质内容付费数据" target="_blank">Python 爬虫实战:从知乎盐选专栏,爬取优质内容付费数据</a>
                        <span class="text-muted">西攻城狮北</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%AE%9E%E6%88%98%E6%A1%88%E4%BE%8B/1.htm">实战案例</a><a class="tag" taget="_blank" href="/search/%E7%9F%A5%E4%B9%8E/1.htm">知乎</a>
                        <div>目录一、前言二、准备篇2.1确定目标2.2工具与库2.3法律与道德声明三、实战篇3.1分析知乎盐选专栏页面3.2模拟登录3.3获取文章列表3.4爬取更多文章数据3.5数据存储四、分析篇4.1数据清洗4.2热门文章分析4.3收藏数分析4.4评论数分析五、总结与展望六、注意事项一、前言知乎盐选专栏作为知乎平台上的优质内容付费板块,汇聚了众多创作者的高质量文章。了解这些文章的付费数据,如点赞数、收藏数、</div>
                    </li>
                    <li><a href="/article/1903735653863059456.htm"
                           title="机器学习——KNN超参数" target="_blank">机器学习——KNN超参数</a>
                        <span class="text-muted">练习AI两年半</span>
<a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a>
                        <div>sklearn.model_selection.GridSearchCV是scikit-learn中用于超参数调优的核心工具,通过结合交叉验证和网格搜索实现模型参数的自动化优化。以下是详细介绍:一、功能概述GridSearchCV在指定参数网格上穷举所有可能的超参数组合,通过交叉验证评估每组参数的性能,最终选择最优参数组合。其核心价值在于:自动化调参:替代手动参数调试,提升效率3。交叉验证支持:通</div>
                    </li>
                    <li><a href="/article/1903733384421634048.htm"
                           title="Emacs和SML的安装和使用" target="_blank">Emacs和SML的安装和使用</a>
                        <span class="text-muted">weixin_42281226</span>
<a class="tag" taget="_blank" href="/search/emacs/1.htm">emacs</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%BE%91%E5%99%A8/1.htm">编辑器</a>
                        <div>环境:Mac电脑参考文章:编程语言软件安装和使用:SML和Emacs1.Emacs安装和基本使用从官网EmacsForMacOSX下载最新版本,正常安装即可。Emacs使用组合键进行操作(组合键比较难记,可以先尝试通用键)。最重要的操作:(C表示Control)C-xC-c:退出EmacsC-g:取消当前操作C-xC-f:打开文件或新建文件C-xC-s:保存文C-xC-w:等同于saveasC-s</div>
                    </li>
                    <li><a href="/article/1903731494430502912.htm"
                           title="【Docker系列四】Docker 网络" target="_blank">【Docker系列四】Docker 网络</a>
                        <span class="text-muted">Kwan的解忧杂货铺@新空间代码工作室</span>
<a class="tag" taget="_blank" href="/search/s4/1.htm">s4</a><a class="tag" taget="_blank" href="/search/Docker%E7%B3%BB%E5%88%97/1.htm">Docker系列</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E5%AE%B9%E5%99%A8/1.htm">容器</a>
                        <div>欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术,jvm,并发编程redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,</div>
                    </li>
                    <li><a href="/article/1903731493532921856.htm"
                           title="新手如何使用 Milvus" target="_blank">新手如何使用 Milvus</a>
                        <span class="text-muted">巴依老爷coder</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/milvus/1.htm">milvus</a><a class="tag" taget="_blank" href="/search/%E5%90%91%E9%87%8F%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">向量数据库</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>一文带你入门Milvus:详细指南新手如何使用Milvus:详细指南一、Milvus简介主要特点应用领域二、安装Milvus安装DockerCompose基于DockerCompose安装Milvus服务端安装attu-可视化界面工具三、快速入门安装PythonSDK连接数据库方式1方式2(方式1的封装)数据库操作核心概念集合操作数据操作插入数据精准查询数据-get条件查询数据-query查询数据</div>
                    </li>
                    <li><a href="/article/1903731241321033728.htm"
                           title="nginx-部署Python网站项目" target="_blank">nginx-部署Python网站项目</a>
                        <span class="text-muted">skyQAQLinux</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a>
                        <div>一、部署Python网站项目实验要求配置Nginx使其可以将动态访问转交给uWSGI安装Python工具及依赖1)拷贝软件到proxy主机[root@server1~]#scp-r/linux-soft/s2/wk/python/192.168.99.5:/root2)安装python依赖软件[root@proxy~]#yum-yinstallgccmakepython3python3-devel</div>
                    </li>
                    <li><a href="/article/1903730353110052864.htm"
                           title="《Solidity智能合约开发:从零到一实战指南》大纲" target="_blank">《Solidity智能合约开发:从零到一实战指南》大纲</a>
                        <span class="text-muted">白马区块Crypto100</span>
<a class="tag" taget="_blank" href="/search/%E6%99%BA%E8%83%BD%E5%90%88%E7%BA%A6/1.htm">智能合约</a>
                        <div>为什么要学Solidity智能合约?在过去几年,区块链从一种“投机工具”进化为一种全新的技术基础设施。无论是NFT、DeFi、GameFi还是DAO,它们的核心都是——智能合约。✨什么是智能合约?智能合约是运行在区块链上的“自动执行程序”,不用依赖中介或第三方,信任直接写进代码里。而Solidity是智能合约开发的“通用语言”。为什么要做这个专栏?做区块链项目的人越来越多,但真正从零系统学习Sol</div>
                    </li>
                    <li><a href="/article/1903728589107425280.htm"
                           title="Python 3.6.8 64位独立安装程序" target="_blank">Python 3.6.8 64位独立安装程序</a>
                        <span class="text-muted">霍娴果Myrtle</span>

                        <div>Python3.6.864位独立安装程序【下载地址】Python3.6.864位独立安装程序Python3.6.864位独立安装程序欢迎使用Python3.6.64位版安装包!本资源专门针对需要在64位操作系统上进行Python环境搭建的用户项目地址:https://gitcode.com/open-source-toolkit/98d19欢迎使用Python3.6.64位版安装包!本资源专门针对</div>
                    </li>
                    <li><a href="/article/1903726697941889024.htm"
                           title="Macrorit Partition Expert:守护硬盘数据的「分区手术专家」" target="_blank">Macrorit Partition Expert:守护硬盘数据的「分区手术专家」</a>
                        <span class="text-muted">KJ-拾荒者</span>
<a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E6%8E%A8%E8%8D%90/1.htm">软件推荐</a><a class="tag" taget="_blank" href="/search/%E6%95%88%E7%8E%87%E6%8F%90%E5%8D%87/1.htm">效率提升</a>
                        <div>你是否经历过这些崩溃瞬间?想给C盘扩容却怕误删文件,硬盘买回来发现系统不认大容量分区,或是想彻底清除隐私数据却担心被恢复软件找回……传统分区工具要么功能受限,要么操作风险高,稍有不慎就会导致数据灾难。MacroritPartitionExpert的出现,为普通用户和专业运维人员提供了一站式解决方案。作为兼容性极强的分区管理工具,它同时支持MBR和GPT分区表,轻松突破传统系统对2TB以上大硬盘的识</div>
                    </li>
                    <li><a href="/article/1903724681467326464.htm"
                           title="Python 3.6.8 安装包下载" target="_blank">Python 3.6.8 安装包下载</a>
                        <span class="text-muted">何盼思Kit</span>

                        <div>Python3.6.8安装包下载【下载地址】Python3.6.8安装包下载Python3.6.8安装包下载本仓库提供适用于Windows操作系统的Python3.6.8安装包,支持x86和x64架构项目地址:https://gitcode.com/open-source-toolkit/d9647本仓库提供适用于Windows操作系统的Python3.6.8安装包,支持x86和x64架构。Pyt</div>
                    </li>
                    <li><a href="/article/1903721531385638912.htm"
                           title="HarmonyOS Next 应用性能优化实战" target="_blank">HarmonyOS Next 应用性能优化实战</a>
                        <span class="text-muted">SameX-4869</span>
<a class="tag" taget="_blank" href="/search/harmonyos/1.htm">harmonyos</a><a class="tag" taget="_blank" href="/search/%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/1.htm">性能优化</a><a class="tag" taget="_blank" href="/search/%E5%8D%8E%E4%B8%BA/1.htm">华为</a>
                        <div>本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)中应用性能优化的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。一、性能评估指标与工具(一)关键性能评估指标CPU使用率CPU使用率是衡量应用在运行过程中对CPU资源占用情况的重要指标。一个高效的Ha</div>
                    </li>
                    <li><a href="/article/1903721403350315008.htm"
                           title="Axios 和 跨域 这两个概念" target="_blank">Axios 和 跨域 这两个概念</a>
                        <span class="text-muted">PLJJ685</span>
<a class="tag" taget="_blank" href="/search/%E5%89%8D%E5%90%8E%E7%AB%AF%E5%88%86%E7%A6%BB%E7%9A%84%E4%BB%93%E5%BA%93%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F/1.htm">前后端分离的仓库管理系统</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a>
                        <div>1.Axios是什么?Axios是一个用于发送网络请求的工具,类似于浏览器自带的fetch,但更强大、更易用。在前端(Vue)中,我们通常用Axios来向后端(SpringBoot)请求数据。举个例子:假设你在一个仓储系统中,前端需要从后端获取商品库存信息。这时,前端就可以用Axios发送一个请求,比如:axios.get('/api/inventory').then(response=>{con</div>
                    </li>
                    <li><a href="/article/1903721275180773376.htm"
                           title="11.网络编程的基础知识" target="_blank">11.网络编程的基础知识</a>
                        <span class="text-muted">就很对</span>
<a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                        <div>11.网络编程的基础知识**1.OSI模型与TCP/IP模型****2.IP地址分类****3.Socket编程****4.TCP三次握手与四次挥手****5.常用网络测试工具****6.练习与作业****7.总结**1.OSI模型与TCP/IP模型OSI模型(开放系统互联模型):7层结构:应用层:为网络用户提供各种服务(如HTTP、FTP)。表示层:数据加密解密、压缩解压缩。会话层:管理进程会话</div>
                    </li>
                    <li><a href="/article/1903720390950187008.htm"
                           title="RK3588开发笔记-buildroot添加telnet服务" target="_blank">RK3588开发笔记-buildroot添加telnet服务</a>
                        <span class="text-muted">flypig哗啦啦</span>
<a class="tag" taget="_blank" href="/search/RK3588/1.htm">RK3588</a><a class="tag" taget="_blank" href="/search/buildroot/1.htm">buildroot</a><a class="tag" taget="_blank" href="/search/busybox/1.htm">busybox</a>
                        <div>目录前言一、Telnet服务背景与适用场景二、telnet服务开启Busybox配置三、固件编译及烧录RK3588烧录验证客户端连接测试3.1Linux/MacOS连接3.2Windows连接总结前言本文主要介绍在RK3588SDK文件包中添加telnet服务,由于sdkbuildroot默认添加的是ssh服务,如用户需要主动开启telnet,则需要另外在busybox中开启telnetd服务,下</div>
                    </li>
                    <li><a href="/article/1903718370310680576.htm"
                           title="Agent、RAG、LangChain的概念及作用" target="_blank">Agent、RAG、LangChain的概念及作用</a>
                        <span class="text-muted">北极冰雨</span>
<a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">大模型</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>Agent:概念:在人工智能中,Agent通常指的是能够执行任务或做出决策的实体,可以是简单的程序,也可以是复杂的系统,如自动化客服助手、推荐系统等,甚至可以是软件代理、机器人或虚拟助手等各种形式。作用:它能利用内置的大语言模型来做出规划,决定执行哪些步骤,以及每个步骤需要调用哪些工具(如RAG),之后调用相应的工具,最终完成任务。例如,在客服问答场景中,Agent可以根据用户的问题,规划出需要查</div>
                    </li>
                    <li><a href="/article/1903712178582646784.htm"
                           title="Docker-部署ES和Kibana" target="_blank">Docker-部署ES和Kibana</a>
                        <span class="text-muted">相逢太短,莫等茶凉</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/mac/1.htm">mac</a>
                        <div>资料kibana和elasticserch兼容性表https://www.elastic.co/cn/support/matrix#matrix_compatibilityMac系统安装需要版本支持linux/arm64,需要两个都要支持有arm64,有些es支持,kibana不支持。ps:dockerpullelasticsearch出现elasticsearch:latestnotfound,</div>
                    </li>
                    <li><a href="/article/1903712052359262208.htm"
                           title="精选2024年5款流程图软件,第一款强推" target="_blank">精选2024年5款流程图软件,第一款强推</a>
                        <span class="text-muted">Firra流程图</span>
<a class="tag" taget="_blank" href="/search/%E6%B5%81%E7%A8%8B%E5%9B%BE/1.htm">流程图</a>
                        <div>流程图绘制是现代化办公中必不可少的一部分,无论是用于团队协作、项目管理还是业务流程优化等,流程图都起到了最强辅助的作用。目前在线流程图工具是时下较为流行的绘制流程图方式。下面就为大家总结5款流程图软件的使用心得,也是在众多流程图软件中挑选出来的top5,可从中挑选一款最适合自己的进行使用哦。1.Firra在线流程图Firra是一款在线流程图工具,主打理念是轻便快捷,随时随地创作。Firra流程图的</div>
                    </li>
                    <li><a href="/article/1903708645221265408.htm"
                           title="Android Compose 框架按钮与交互组件模块源码深度剖析(二)" target="_blank">Android Compose 框架按钮与交互组件模块源码深度剖析(二)</a>
                        <span class="text-muted">&有梦想的咸鱼&</span>
<a class="tag" taget="_blank" href="/search/Androiod/1.htm">Androiod</a><a class="tag" taget="_blank" href="/search/Compose%E5%8E%9F%E7%90%86/1.htm">Compose原理</a><a class="tag" taget="_blank" href="/search/Android%E5%BC%80%E5%8F%91%E5%A4%A7%E5%85%A8/1.htm">Android开发大全</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>一、引言在现代Android应用开发中,用户交互体验至关重要。AndroidCompose作为Google推出的声明式UI工具包,为开发者提供了简洁、高效且灵活的方式来构建用户界面。其中,按钮与交互组件模块是用户与应用进行交互的重要组成部分。本文将深入剖析AndroidCompose框架中按钮与交互组件模块的源码,从基础概念到具体实现,逐步揭示其工作原理和设计思路。二、AndroidCompose</div>
                    </li>
                    <li><a href="/article/1903705998200205312.htm"
                           title="Trunk:Rust WASM 应用的终极打包工具" target="_blank">Trunk:Rust WASM 应用的终极打包工具</a>
                        <span class="text-muted">徐天铭Paxton</span>

                        <div>Trunk:RustWASM应用的终极打包工具trunkBuild,bundle&shipyourRustWASMapplicationtotheweb.项目地址:https://gitcode.com/gh_mirrors/tr/trunk项目介绍Trunk是一款专为Rust语言设计的WASM网页应用打包工具。它能够帮助开发者轻松构建、打包并发布Rust编写的WASM应用到Web平台。Trunk</div>
                    </li>
                    <li><a href="/article/1903705494300717056.htm"
                           title="【第1章>第6节】CMAC小脑模型神经网络的理论学习与MATLAB仿真" target="_blank">【第1章>第6节】CMAC小脑模型神经网络的理论学习与MATLAB仿真</a>
                        <span class="text-muted">fpga和matlab</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E7%AC%AC1%E7%AB%A0%C2%B7%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">第1章·神经网络</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/matlab/1.htm">matlab</a><a class="tag" taget="_blank" href="/search/CMAC/1.htm">CMAC</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E8%84%91%E6%A8%A1%E5%9E%8B%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">小脑模型神经网络</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>目录1.使用软件和版本2.CMAC小脑模型神经网络概述2.1CMAC网络结构2.2CMAC地址映射2.3学习过程3.CMAC网络的MATLAB编程实现4.分辨率,重叠度,学习率对CMAC网络的训练性能影响分析4.1分辨率4.2重叠度4.3学习率5.视频操作步骤演示欢迎订阅FPGA/MATLAB/Simulink系列教程《★教程1:matlab入门100例》《★教程2:fpga入门100例》《★教程</div>
                    </li>
                    <li><a href="/article/1903703100389126144.htm"
                           title="LabVIEW通过以太网与S PLC通信" target="_blank">LabVIEW通过以太网与S PLC通信</a>
                        <span class="text-muted">JwxDjango</span>
<a class="tag" taget="_blank" href="/search/labview/1.htm">labview</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E4%B8%8E%E9%80%9A%E4%BF%A1/1.htm">信息与通信</a>
                        <div>LabVIEW是一种强大的工程开发平台,广泛应用于自动化和控制系统。它提供了丰富的功能和工具,使工程师能够轻松地开发各种应用程序,包括与外部设备的通信。本文将介绍如何使用LabVIEW通过以太网与SPLC进行通信,并提供相应的源代码。在开始之前,确保已安装好LabVIEW开发环境,并且已经连接好了以太网和SPLC。接下来,我们将按照以下步骤进行操作:创建LabVIEW项目:打开LabVIEW开发环</div>
                    </li>
                    <li><a href="/article/1903702684943314944.htm"
                           title="centos 7 安装docker-compose" target="_blank">centos 7 安装docker-compose</a>
                        <span class="text-muted"></span>

                        <div>1.下载docker-compose#官方推荐(太慢)curl-L"https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname-s)-$(uname-m)"-o/usr/local/bin/docker-compose#国内(更快)curl-Lhttps://get.daocloud.io/do</div>
                    </li>
                                <li><a href="/article/17.htm"
                                       title="分享100个最新免费的高匿HTTP代理IP" target="_blank">分享100个最新免费的高匿HTTP代理IP</a>
                                    <span class="text-muted">mcj8089</span>
<a class="tag" taget="_blank" href="/search/%E4%BB%A3%E7%90%86IP/1.htm">代理IP</a><a class="tag" taget="_blank" href="/search/%E4%BB%A3%E7%90%86%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">代理服务器</a><a class="tag" taget="_blank" href="/search/%E5%8C%BF%E5%90%8D%E4%BB%A3%E7%90%86/1.htm">匿名代理</a><a class="tag" taget="_blank" href="/search/%E5%85%8D%E8%B4%B9%E4%BB%A3%E7%90%86IP/1.htm">免费代理IP</a><a class="tag" taget="_blank" href="/search/%E6%9C%80%E6%96%B0%E4%BB%A3%E7%90%86IP/1.htm">最新代理IP</a>
                                    <div>  
推荐两个代理IP网站: 
  
1. 全网代理IP:http://proxy.goubanjia.com/ 
  
2. 敲代码免费IP:http://ip.qiaodm.com/ 
  
  
120.198.243.130:80,中国/广东省
58.251.78.71:8088,中国/广东省
183.207.228.22:83,中国/</div>
                                </li>
                                <li><a href="/article/144.htm"
                                       title="mysql高级特性之数据分区" target="_blank">mysql高级特性之数据分区</a>
                                    <span class="text-muted">annan211</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%8C%BA/1.htm">分区</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>


mysql高级特性
  1 以存储引擎的角度分析,分区表和物理表没有区别。是按照一定的规则将数据分别存储的逻辑设计。器底层是由多个物理字表组成。
  
  2 分区的原理
     分区表由多个相关的底层表实现,这些底层表也是由句柄对象表示,所以我们可以直接访问各个分区。存储引擎管理分区的各个底层
	 表和管理普通表一样(所有底层表都必须使用相同的存储引擎),分区表的索引只是</div>
                                </li>
                                <li><a href="/article/271.htm"
                                       title="JS采用正则表达式简单获取URL地址栏参数" target="_blank">JS采用正则表达式简单获取URL地址栏参数</a>
                                    <span class="text-muted">chiangfai</span>
<a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/%E5%9C%B0%E5%9D%80%E6%A0%8F%E5%8F%82%E6%95%B0%E8%8E%B7%E5%8F%96/1.htm">地址栏参数获取</a>
                                    <div>GetUrlParam:function GetUrlParam(param){
		var reg = new RegExp("(^|&)"+ param +"=([^&]*)(&|$)");
		var r = window.location.search.substr(1).match(reg);
		if(r!=null</div>
                                </li>
                                <li><a href="/article/398.htm"
                                       title="怎样将数据表拷贝到powerdesigner (本地数据库表)" target="_blank">怎样将数据表拷贝到powerdesigner (本地数据库表)</a>
                                    <span class="text-muted">Array_06</span>
<a class="tag" taget="_blank" href="/search/powerDesigner/1.htm">powerDesigner</a>
                                    <div>================================================== 
 
1、打开PowerDesigner12,在菜单中按照如下方式进行操作 
file->Reverse Engineer->DataBase 
点击后,弹出 New Physical Data Model 的对话框 
2、在General选项卡中 
Model name:模板名字,自</div>
                                </li>
                                <li><a href="/article/525.htm"
                                       title="logbackのhelloworld" target="_blank">logbackのhelloworld</a>
                                    <span class="text-muted">飞翔的马甲</span>
<a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97/1.htm">日志</a><a class="tag" taget="_blank" href="/search/logback/1.htm">logback</a>
                                    <div>一、概述 
 
1.日志是啥? 
当我是个逗比的时候我是这么理解的:log.debug()代替了system.out.print(); 
当我项目工作时,以为是一堆得.log文件。 
这两天项目发布新版本,比较轻松,决定好好地研究下日志以及logback。 
传送门1:日志的作用与方法: 
http://www.infoq.com/cn/articles/why-and-how-log 
上面的作</div>
                                </li>
                                <li><a href="/article/652.htm"
                                       title="新浪微博爬虫模拟登陆" target="_blank">新浪微博爬虫模拟登陆</a>
                                    <span class="text-muted">随意而生</span>
<a class="tag" taget="_blank" href="/search/%E6%96%B0%E6%B5%AA%E5%BE%AE%E5%8D%9A/1.htm">新浪微博</a>
                                    <div>转载自:http://hi.baidu.com/erliang20088/item/251db4b040b8ce58ba0e1235 
  
  
近来由于毕设需要,重新修改了新浪微博爬虫废了不少劲,希望下边的总结能够帮助后来的同学们。 
     现行版的模拟登陆与以前相比,最大的改动在于cookie获取时候的模拟url的请求</div>
                                </li>
                                <li><a href="/article/779.htm"
                                       title="synchronized" target="_blank">synchronized</a>
                                    <span class="text-muted">香水浓</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/thread/1.htm">thread</a>
                                    <div>    Java语言的关键字,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这段代码。当两个并发线程访问同一个对象object中的这个加锁同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。然而,当一个线程访问object的一个加锁代码块时,另一个线程仍然</div>
                                </li>
                                <li><a href="/article/906.htm"
                                       title="maven 简单实用教程" target="_blank">maven 简单实用教程</a>
                                    <span class="text-muted">AdyZhang</span>
<a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a>
                                    <div>1. Maven介绍  1.1. 简介 java编写的用于构建系统的自动化工具。目前版本是2.0.9,注意maven2和maven1有很大区别,阅读第三方文档时需要区分版本。 1.2. Maven资源 见官方网站;The 5 minute test,官方简易入门文档;Getting Started Tutorial,官方入门文档;Build Coo</div>
                                </li>
                                <li><a href="/article/1033.htm"
                                       title="Android 通过 intent传值获得null" target="_blank">Android 通过 intent传值获得null</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>我在通过intent 获得传递兑现过的时候报错,空指针,我是getMap方法进行传值,代码如下        1   2   3   4   5   6   7   8   9      
public 
void 
getMap(View view){       
         
Intent i =</div>
                                </li>
                                <li><a href="/article/1160.htm"
                                       title="apache 做代理 报如下错误:The proxy server received an invalid response from an upstream" target="_blank">apache 做代理 报如下错误:The proxy server received an invalid response from an upstream</a>
                                    <span class="text-muted">baalwolf</span>
<a class="tag" taget="_blank" href="/search/response/1.htm">response</a>
                                    <div>网站配置是apache+tomcat,tomcat没有报错,apache报错是: 
The proxy server received an invalid response from an upstream server. The proxy server could not handle the request GET /. Reason: Error reading fr</div>
                                </li>
                                <li><a href="/article/1287.htm"
                                       title="Tomcat6 内存和线程配置" target="_blank">Tomcat6 内存和线程配置</a>
                                    <span class="text-muted">BigBird2012</span>
<a class="tag" taget="_blank" href="/search/tomcat6/1.htm">tomcat6</a>
                                    <div>1、修改启动时内存参数、并指定JVM时区 (在windows server 2008 下时间少了8个小时) 
在Tomcat上运行j2ee项目代码时,经常会出现内存溢出的情况,解决办法是在系统参数中增加系统参数:  
window下, 在catalina.bat最前面 
  set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms5</div>
                                </li>
                                <li><a href="/article/1414.htm"
                                       title="Karam与TDD" target="_blank">Karam与TDD</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/Karam/1.htm">Karam</a><a class="tag" taget="_blank" href="/search/TDD/1.htm">TDD</a>
                                    <div>一.TDD 
        测试驱动开发(Test-Driven Development,TDD)是一种敏捷(AGILE)开发方法论,它把开发流程倒转了过来,在进行代码实现之前,首先保证编写测试用例,从而用测试来驱动开发(而不是把测试作为一项验证工具来使用)。 
        TDD的原则很简单: 
a.只有当某个</div>
                                </li>
                                <li><a href="/article/1541.htm"
                                       title="[Zookeeper学习笔记之七]Zookeeper源代码分析之Zookeeper.States" target="_blank">[Zookeeper学习笔记之七]Zookeeper源代码分析之Zookeeper.States</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/zookeeper/1.htm">zookeeper</a>
                                    <div>    public enum States {
        CONNECTING, //Zookeeper服务器不可用,客户端处于尝试链接状态
        ASSOCIATING, //???
        CONNECTED, //链接建立,可以与Zookeeper服务器正常通信
        CONNECTEDREADONLY, //处于只读状态的链接状态,只读模式可以在</div>
                                </li>
                                <li><a href="/article/1668.htm"
                                       title="【Scala十四】Scala核心八:闭包" target="_blank">【Scala十四】Scala核心八:闭包</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/scala/1.htm">scala</a>
                                    <div>Free variable A free variable of an expression is a variable that’s used inside the expression but not defined inside the expression. For instance, in the function literal expression (x: Int) => (x</div>
                                </li>
                                <li><a href="/article/1795.htm"
                                       title="android发送json并解析返回json" target="_blank">android发送json并解析返回json</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>package com.http.test; 
 
 
import org.apache.http.HttpResponse; 
import org.apache.http.HttpStatus; 
import org.apache.http.client.HttpClient; 
import org.apache.http.client.methods.HttpGet; 
import </div>
                                </li>
                                <li><a href="/article/1922.htm"
                                       title="一份IT实习生的总结" target="_blank">一份IT实习生的总结</a>
                                    <span class="text-muted">brotherlamp</span>
<a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/php%E8%B5%84%E6%96%99/1.htm">php资料</a><a class="tag" taget="_blank" href="/search/php%E6%95%99%E7%A8%8B/1.htm">php教程</a><a class="tag" taget="_blank" href="/search/php%E5%9F%B9%E8%AE%AD/1.htm">php培训</a><a class="tag" taget="_blank" href="/search/php%E8%A7%86%E9%A2%91/1.htm">php视频</a>
                                    <div>今天突然发现在不知不觉中自己已经实习了 3 个月了,现在可能不算是真正意义上的实习吧,因为现在自己才大三,在这边撸代码的同时还要考虑到学校的功课跟期末考试。让我震惊的是,我完全想不到在这 3 个月里我到底学到了什么,这是一件多么悲催的事情啊。同时我对我应该 get 到什么新技能也很迷茫。所以今晚还是总结下把,让自己在接下来的实习生活有更加明确的方向。最后感谢工作室给我们几个人这个机会让我们提前出来</div>
                                </li>
                                <li><a href="/article/2049.htm"
                                       title="据说是2012年10月人人网校招的一道笔试题-给出一个重物重量为X,另外提供的小砝码重量分别为1,3,9。。。3^N。 将重物放到天平左侧,问在两边如何添加砝码" target="_blank">据说是2012年10月人人网校招的一道笔试题-给出一个重物重量为X,另外提供的小砝码重量分别为1,3,9。。。3^N。 将重物放到天平左侧,问在两边如何添加砝码</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>
public class ScalesBalance {

	/**
	 * 题目:
	 * 给出一个重物重量为X,另外提供的小砝码重量分别为1,3,9。。。3^N。 (假设N无限大,但一种重量的砝码只有一个)
	 * 将重物放到天平左侧,问在两边如何添加砝码使两边平衡
	 * 
	 * 分析:
	 * 三进制
	 * 我们约定括号表示里面的数是三进制,例如 47=(1202</div>
                                </li>
                                <li><a href="/article/2176.htm"
                                       title="dom4j最常用最简单的方法" target="_blank">dom4j最常用最简单的方法</a>
                                    <span class="text-muted">chiangfai</span>
<a class="tag" taget="_blank" href="/search/dom4j/1.htm">dom4j</a>
                                    <div>要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4j包下载地址:http://nchc.dl.sourceforge.net/sourceforge/dom4j/dom4j-1.6.1.zip 
解开后有两个包,仅操作XML文档的话把dom4j-1.6.1.jar加入工程就可以了,如果需要使用XPath的话还需要</div>
                                </li>
                                <li><a href="/article/2303.htm"
                                       title="简单HBase笔记" target="_blank">简单HBase笔记</a>
                                    <span class="text-muted">chenchao051</span>
<a class="tag" taget="_blank" href="/search/hbase/1.htm">hbase</a>
                                    <div> 一、Client-side write buffer 客户端缓存请求   描述:可以缓存客户端的请求,以此来减少RPC的次数,但是缓存只是被存在一个ArrayList中,所以多线程访问时不安全的。   可以使用getWriteBuffer()方法来取得客户端缓存中的数据。 默认关闭。      二、Scan的Caching   描述: next( )方法请求一行就要使用一次RPC,即使</div>
                                </li>
                                <li><a href="/article/2430.htm"
                                       title="mysqldump导出时出现when doing LOCK TABLES" target="_blank">mysqldump导出时出现when doing LOCK TABLES</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/mysqdump/1.htm">mysqdump</a><a class="tag" taget="_blank" href="/search/%E5%AF%BC%E6%95%B0%E6%8D%AE/1.htm">导数据</a>
                                    <div>  执行 mysqldump -uxxx -pxxx -hxxx -Pxxxx database tablename > tablename.sql  
导出表时,会报 
 
mysqldump: Got error: 1044: Access denied for user 'xxx'@'xxx' to database 'xxx' when doing LOCK TABLES 
 
解决</div>
                                </li>
                                <li><a href="/article/2557.htm"
                                       title="CSS渲染原理" target="_blank">CSS渲染原理</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a>
                                    <div>   从事Web前端开发的人都与CSS打交道很多,有的人也许不知道css是怎么去工作的,写出来的css浏览器是怎么样去解析的呢?当这个成为我们提高css水平的一个瓶颈时,是否应该多了解一下呢?   
  
       一、浏览器的发展与CSS      
  
   </div>
                                </li>
                                <li><a href="/article/2684.htm"
                                       title="《阿甘正传》台词" target="_blank">《阿甘正传》台词</a>
                                    <span class="text-muted">dcj3sjt126com</span>

                                    <div>Part Ⅰ: 
《阿甘正传》Forrest Gump经典中英文对白 
Forrest: Hello! My names Forrest. Forrest Gump. You wanna Chocolate? I could eat about a million and a half othese. My momma always said life was like a box ochocol</div>
                                </li>
                                <li><a href="/article/2811.htm"
                                       title="Java处理JSON" target="_blank">Java处理JSON</a>
                                    <span class="text-muted">dyy_gusi</span>
<a class="tag" taget="_blank" href="/search/json/1.htm">json</a>
                                    <div>Json在数据传输中很好用,原因是JSON 比 XML 更小、更快,更易解析。 
在Java程序中,如何使用处理JSON,现在有很多工具可以处理,比较流行常用的是google的gson和alibaba的fastjson,具体使用如下: 
1、读取json然后处理 
class ReadJSON
{
    public static void main(String[] args)
    </div>
                                </li>
                                <li><a href="/article/2938.htm"
                                       title="win7下nginx和php的配置" target="_blank">win7下nginx和php的配置</a>
                                    <span class="text-muted">geeksun</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a>
                                    <div>1.  安装包准备 
nginx :  从nginx.org下载nginx-1.8.0.zip 
php: 从php.net下载php-5.6.10-Win32-VC11-x64.zip, php是免安装文件。 
RunHiddenConsole: 用于隐藏命令行窗口 
  
2. 配置 
# java用8080端口做应用服务器,nginx反向代理到这个端口即可 
p</div>
                                </li>
                                <li><a href="/article/3065.htm"
                                       title="基于2.8版本redis配置文件中文解释" target="_blank">基于2.8版本redis配置文件中文解释</a>
                                    <span class="text-muted">hongtoushizi</span>
<a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a>
                                    <div>转载自: http://wangwei007.blog.51cto.com/68019/1548167 
       在Redis中直接启动redis-server服务时, 采用的是默认的配置文件。采用redis-server   xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务。下面是Redis2.8.9的配置文</div>
                                </li>
                                <li><a href="/article/3192.htm"
                                       title="第五章 常用Lua开发库3-模板渲染" target="_blank">第五章 常用Lua开发库3-模板渲染</a>
                                    <span class="text-muted">jinnianshilongnian</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/lua/1.htm">lua</a>
                                    <div>动态web网页开发是Web开发中一个常见的场景,比如像京东商品详情页,其页面逻辑是非常复杂的,需要使用模板技术来实现。而Lua中也有许多模板引擎,如目前我在使用的lua-resty-template,可以渲染很复杂的页面,借助LuaJIT其性能也是可以接受的。 
  
如果学习过JavaEE中的servlet和JSP的话,应该知道JSP模板最终会被翻译成Servlet来执行;而lua-r</div>
                                </li>
                                <li><a href="/article/3319.htm"
                                       title="JZSearch大数据搜索引擎" target="_blank">JZSearch大数据搜索引擎</a>
                                    <span class="text-muted">颠覆者</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a>
                                    <div>系统简介: 
 
 大数据的特点有四个层面:第一,数据体量巨大。从TB级别,跃升到PB级别;第二,数据类型繁多。网络日志、视频、图片、地理位置信息等等。第三,价值密度低。以视频为例,连续不间断监控过程中,可能有用的数据仅仅有一两秒。第四,处理速度快。最后这一点也是和传统的数据挖掘技术有着本质的不同。业界将其归纳为4个“V”——Volume,Variety,Value,Velocity。大数据搜索引</div>
                                </li>
                                <li><a href="/article/3446.htm"
                                       title="10招让你成为杰出的Java程序员" target="_blank">10招让你成为杰出的Java程序员</a>
                                    <span class="text-muted">pda158</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E6%A1%86%E6%9E%B6/1.htm">框架</a>
                                    <div>如果你是一个热衷于技术的  
Java 程序员, 那么下面的 10 个要点可以让你在众多 Java 开发人员中脱颖而出。      
1. 拥有扎实的基础和深刻理解 OO 原则     对于 Java 程序员,深刻理解 Object Oriented Programming(面向对象编程)这一概念是必须的。没有 OOPS 的坚实基础,就领会不了像 Java 这些面向对象编程语言</div>
                                </li>
                                <li><a href="/article/3573.htm"
                                       title="tomcat之oracle连接池配置" target="_blank">tomcat之oracle连接池配置</a>
                                    <span class="text-muted">小网客</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a>
                                    <div>tomcat版本7.0 
配置oracle连接池方式: 
修改tomcat的server.xml配置文件: 
 <GlobalNamingResources>
 
			  <Resource name="utermdatasource" auth="Container"  
 type="javax.sql.DataSou</div>
                                </li>
                                <li><a href="/article/3700.htm"
                                       title="Oracle 分页算法汇总" target="_blank">Oracle 分页算法汇总</a>
                                    <span class="text-muted">vipbooks</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a>
                                    <div>    这是我找到的一些关于Oracle分页的算法,大家那里还有没有其他好的算法没?我们大家一起分享一下! 
 
 

-- Oracle 分页算法一
select * from (
       select page.*,rownum rn from (select * from help) page 
       -- 20 = (currentPag</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html><script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>