





"""simple docstring"""




from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_flax_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
    is_vision_available,
)


lowerCamelCase_     :						Union[str, Any]						=					{
    '''configuration_owlvit''': [
        '''OWLVIT_PRETRAINED_CONFIG_ARCHIVE_MAP''',
        '''OwlViTConfig''',
        '''OwlViTOnnxConfig''',
        '''OwlViTTextConfig''',
        '''OwlViTVisionConfig''',
    ],
    '''processing_owlvit''': ['''OwlViTProcessor'''],
}


try:
   if not is_vision_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   lowerCamelCase_     :						Optional[int]						=					['''OwlViTFeatureExtractor''']
   lowerCamelCase_     :						Union[str, Any]						=					['''OwlViTImageProcessor''']

try:
   if not is_torch_available():
      raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
   pass
else:
   lowerCamelCase_     :						Optional[Any]						=					[
       '''OWLVIT_PRETRAINED_MODEL_ARCHIVE_LIST''',
       '''OwlViTModel''',
       '''OwlViTPreTrainedModel''',
       '''OwlViTTextModel''',
       '''OwlViTVisionModel''',
       '''OwlViTForObjectDetection''',
   ]

if TYPE_CHECKING:
   from .configuration_owlvit import (
       OWLVIT_PRETRAINED_CONFIG_ARCHIVE_MAP,
       OwlViTConfig,
       OwlViTOnnxConfig,
       OwlViTTextConfig,
       OwlViTVisionConfig,
   )
   from .processing_owlvit import OwlViTProcessor

   try:
      if not is_vision_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .feature_extraction_owlvit import OwlViTFeatureExtractor
      from .image_processing_owlvit import OwlViTImageProcessor

   try:
      if not is_torch_available():
         raise OptionalDependencyNotAvailable()
   except OptionalDependencyNotAvailable:
      pass
   else:
      from .modeling_owlvit import (
          OWLVIT_PRETRAINED_MODEL_ARCHIVE_LIST,
          OwlViTForObjectDetection,
          OwlViTModel,
          OwlViTPreTrainedModel,
          OwlViTTextModel,
          OwlViTVisionModel,
      )

else:
   import sys

   lowerCamelCase_     :						int						=					_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)
from datetime import datetime

import requests
from bsa import BeautifulSoup

if __name__ == "__main__":
   __lowerCamelCase			: str							   =		input('''Enter image url: ''').strip()
   print(F"""Downloading image from {url} ...""")
   __lowerCamelCase			: Any							   =		BeautifulSoup(requests.get(url).content, '''html.parser''')
   # The image URL is in the content field of the first meta tag with property og:image
   __lowerCamelCase			: List[Any]							   =		soup.find('''meta''', {'''property''': '''og:image'''})['''content''']
   __lowerCamelCase			: Tuple							   =		requests.get(image_url).content
   __lowerCamelCase			: Union[str, Any]							   =		F"""{datetime.now():%Y-%m-%d_%H:%M:%S}.jpg"""
   with open(file_name, '''wb''') as fp:
      fp.write(image_data)
   print(F"""Done. Image saved to disk as {file_name}.""")
