برنامه ریزی، نمرات و مباحث دروس

فایل صورت سوال:

دریافت


مواردی که ممکن است در این تمرین لازم شود:


مهلت تحویل: دوشنبه 95/2/6 
طریقه تحویل: ایمیل به mmnematollahi+ie@gmail.com


#پی نوشت
کد استخراج id فیلمها از صفحه اول سایت:
import requests
from bs4 import BeautifulSoup as bs
import re

_URL = 'http://cinematicket.org/'

r = requests.get(_URL)
soup = bs(r.text)
soup = soup.select('.filmbox')[0]
soup = soup.select('.con .margin a')
ids = [int(re.findall('fid=(\d+)',x.attrs['href'])[0]) for x in soup]
  • محمد مهدی نعمت الهی

نظرات  (۴)

  • ابوالفضل امینی
  • سلام وقت بخیر 
    برای تابعی که اسم بازیگر رو میگیره و نام فیلم هارو برمیگردونه با این که utf  8 رو هم به فایل پایتون اضافه کردم ارور میده
    در صورتی که با اضافه کردن یه اسم لاتین به اطلاعات یکی از فیلم ها به صورت دستی جواب درستی میده تابع. چطوری این مشکل حل میشه ؟ 

    which_film('افسانه بایگان')

    Traceback (most recent call last): File , line 83, in which_film('افسانه بایگان') File ..., line 43, in which_film UnicodeDecodeError: 'ascii' codec can't decode byte 0xd8 in position 0: ordinal not in range(128)
    سلام استاد وقتتون به خیر

    استاد یه مشکل عجیب
    من اسم فیلمهارو در میارم داخل یه متغیر ذخیره می کنم چاپشون می کنم درست میشه ولی همون متغیر رو ازش یه دیکشنری می سازم چاپش میکنم یا ارور انکود می گیره و اصلا اجرا نمی شه و یا اگه اجرا شه به این صورت چاب میشه :
    u0235\ یه همچین چیزی به ازای هر کاراکتر

    سرچ کردم گفته بود باید خط اول این رو اضافه کنم : 
    # -*- coding: utf-8 -*-

    اضافه کردم ولی باز هم درست نشد
    پاسخ:
    اگر در فایل پایتونتون از کاراکترهای یونیکد استفاده می کنید، باید این خط
    # -*- coding: utf-8 -*-
    یا این خط 
    # coding: utf8
    را به اول فایلتون اضافه کنید.
    وقتی هم یه متن یونیکد داشته باشید بخواید پرینت کنید، شرایط مختلفه، ولی احتمالا بدین صورت می تونید چاپش کنید:
    print a.encode('u8)
    وقتی هم بخواید یه متن یونیکد تعریف کنید، می تونید قبل از single quote حرف u را قرار دهید. مثلا:
    a=u'سلام'
    سلام استاد.
    من  pip  و  beautiful soup رو نصب کردم ولی   import request  بازم ارور میده :( ؟؟؟؟؟!!!!!!!!!!!!
    پاسخ:
    سلام
    چون requests هست نه request
    :)
    سلام استاد

    اگر امکانش هست مهلت تحویل تمرین رو تمدید کنید.

    ممنون
    پاسخ:
    سلام
    متاسفانه همان طور که در کلاس گفته شد، تمدید نمی شود.
    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی